Professional Documents
Culture Documents
Design and Implementation of Signal Processing Unit For Two-Way Relay Node in MIMO-SDM-PNC System
Design and Implementation of Signal Processing Unit For Two-Way Relay Node in MIMO-SDM-PNC System
Abstract—In this paper, design and implementation of the MIMO-PNC system, the network-coded symbols at the relay
signal processing unit for the relay node in a two-way re- are formed using the summation and difference components
alay multiple-input multiple-output spatial division multiplex- from the two terminal nodes. The MIMO-PNC scheme does
ing (MIMO-SDM) system using physical-layer network coding
(PNC), reffered to as MIMO-SDM-PNC, are presented. Based not require strict synchronization for the carrier phase while
on FPGA platform, two processing architectures for zero-forcing producing higher performance than that in the conventional
(ZF) and minimum mean square error (MMSE) detector are MIMO-NC schemes in the case of Rayleigh fading. In the
proposed for the relay node. Using the standard pipe-lining paper [15], the authors proposed the channel coding and
and the parallel computing methodologies, a novel architecture physical-layer network coding (CPNC) for a two-way relay
is developed in order to achieve low latency and low-area
occupation for FPGA implementation. The proposed architecture MIMO system. The proposed method converts the received
has been composed in Verilog language and synthesized on the streams from two sources to the relay node into parallel
ISE tool for Xilinx FPGA Virtex 7. Experimental results show streams, leading to a capacity achievement close to an upper
that the proposed design offers high performance in terms of low theoretical bound. Furthermore, Zhang et al. proposed the
latency and high throughput. Vertical-Bell Laboratories Layered Space-Time (V-BLAST)-
Index Terms—MIMO, SDM, PNC, DSP, ZF, MMSE, FPGA
PNC scheme that superimposes the received packets at the
relay node into a network coding form, which can use the V-
I. I NTRODUCTION
BLAST algorithm to estimate the summation and difference
In order to enhance capacity and coverage of cellular version of the received signals from two sources. In addition,
communication systems, wireless relaying has been considered the space-division multiplexed (SDM)-PNC for the MIMO
a promising scheme and included in recent broadband radio channel was proposed in the paper [16]. The proposed MIMO-
standards [1]. Recent researches also showed that relay com- SDM-PNC system has the same diversity order, however, at-
munications can achieve significant improvement in quality tains double multiplexing gain in comparison with the MIMO-
of service (QoS) and system performance, reducing outage PNC system while it does not require channel state information
probability and transmission power [2] [3] [4] [5]. However, (CSI) of the links from two source to the relay node. In this
conventional relaying schemes reduce bandwidth efficiency, paper, we focus our attention on design and implementation of
system throughput and capacity as it requires multiple time the signal processing unit at the relay node in a bi-directional
slots for bidirectional data exchange. There have been signifi- MIMO-SDM-PNC system.
cant efforts in striving to overcome these problems [6] [7] [8] The challenge in the signal processing for MIMO systems
[9] among which network coding (NC) appears as a potential is to ensure high computing performance, to implement com-
solution [10] [11] [12]. putationally intensive operations and to achieve low latency
In the conventional two-hop bi-directional communication while all calculations need to be reliable. With the above
networks NC can be applied to reduce the required number requirements, we notice that computation and processing for
of time slots from four to three using an appropriate symbol MIMO systems can be implemented on FPGA and ASIC plat-
encoding at the relay. Further implementation of NC at the forms. There were also several researches on implementation
physical layer, which results in the physical-layer NC (PNC), of MIMO systems in the literature. For instance, Dowle et
can save one more time slot [13]. In paper [13], Zhang et al. al. developed a space-time array research (STAR) platform
demonstrated that throughput of the PNC system can increase for a MIMO system which requires less effort and results in
by 200% and 150% in comparison with the non-NC and the a more stable system than a similar digital signal processing
NC system, respectively. (DSP) one implemented in [17]. An implementation of STBC
Recently, PNC was also introduced in the two-way relay systems was introduced and presented in [18]. In [19], [20],
multiple-input multiple-output (MIMO) system [14]. In the an FPGA-based architecture for SD and fixed sphere decoder
(FSD) was proposed for MIMO systems. In addition, the The two parallel data streams transmitted from the source
encoder for an Alamouti STBC system with two transmit nodes N1 and N2 are given by
and four receive antennas was designed and implemented (1) (2)
in [21] while an implementation of the decoder for MIMO x1 = (xi )1×2 x2 = (xj )1×2 , i, j = 1..2. (1)
systems was developed in [22]. In paper [23], an FPGA The channel matrices representing the fading links between
architecture for the sorted QR decomposition (SQRD) detector the two source nodes and the relay node are denoted as follows
at the destination node was introduced. In paper [24], a design (1)
and implementation based on FPGA for the detector at the H 1 = (hij )4×2 , H 2 = (h(2)
nm )
4×2
, (2)
destination node in a MIMO-SDM-PNC system was proposed. where i, n = 1, 2; j, m = 1, 2, 3, 4.
This paper aims to design and implement the signal process- The equivalent channel matrix and equivalent transmit sig-
ing unit at the relay node based on FPGA for the MIMO-SDM- nal vector can be represented as follows
PNC system proposed in [16] which uses both zero forcing
(ZF) and minimum mean square error (MMSE) detector. H = [H1 , H2 ]; (3)
In the proposed architecture, structure of the arithmetic and x = [x1 , x2 ]T . (4)
matrix calculation modules is designed to work with complex
At the relay node, the received signal vector from the source
numbers. In order to improve the system throughput, pipeline
nodes can be obtained by the following equations.
technique and parallel processing are jointly combined to
implement associated modules. In our design, there are several 1
r = √ Hx + n;
types of associated types such as matrix addition, matrix multi- 2
plication, matrix Hermit transformation and matrix inversion. 1
= √ HV −1 (V x) + n; (5)
Among these modules, matrix inversion module reffered to 2
as M inv requires a large number of calculations and a large 1
amount of calculation time. We propose some designs for this = √ Ĥ x̂ + n,
2
module and analyze them to find out an optimal solution.
where the received signal vector r = [r1 , r2 , r3 , r4 ]T and the
The rest of this paper is organized as follows. System model
noise vector n = [n1 , n2 , n3 , n4 ]T ; the fraction √12 is the
of the considered system is illustrated in Sec. II. The FPGA
architecture and some main modules are presented in Sec. III. power normalization factor. The matrix Ĥ and vector x̂ can
Sec. IV presents implementation results and finally Sect. V be expressed in following equations.
concludes the paper. Ĥ , HV −1 (6)
x̂ , V x. (7)
II. S YSTEM M ODEL
The matrix V is determined as in the paper [16], i.e.
In this paper, we consider a MIMO-SDM-PNC two-way
relay system which is illustrated in Fig. 1 [16]. In this system,
1 0 1 0
two source nodes N1 and N2 exchange data via the relay 0 1 0 1
node R. Each source node has two transmit antennas and V = 2V −1 = . (8)
1 0 −1 0
two receive antennas while relay node has 2 transmit antennas
0 1 0 −1
and 4 receive antennas. We assume that all nodes operate in
half-duplex mode and there is no direct link between source Therefore, the vector x̂ can be rewritten as follows
nodes. The transmission in the two-way system consists of (1) (2)
x1 + x1
two phases. In the first phase period, two node N1 and N2 (1) (2)
simultaneously send data streams x1 and x2 to the relay node x + x2
x̂ = 2(1) . (9)
R. When the relay node receives the two data streams it x1 − x(2)1
(1) (2)
encodes them in the PNC form. At the seconds phase, the x2 − x2
relay node R broadcasts the encoded data streams to both In order to estimate the vector x̂, a low-complexity linear
source nodes. detector is employed. From (9) it is clear that the role of the
(1) (2)
relay node is to estimate the summation component xi +xi
(1) (2)
and the difference component xi −xi (where i = 1, 2) from
the received signal vector r. Using the ZF or MMSE detector
[16] the weight matrix is used for linear combining is given
respectively by
H −1 H
GZF = Ĥ Ĥ Ĥ ; (10)
H −1 H
Fig. 1. System model of the MIMO-SDM-PNC two-way relay system. GMMSE = Ĥ Ĥ + σn2 I 2 Ĥ ; (11)
As a result, the vector x̂ can be estimated as follows both conventional and proposed architectures will be evaluated
and compared with each other. After that, the parameters of
^(2)
(1)
1x + x 1 the optimal architecture such as the number of quantization
x ^
(1) (2) levels, normalization factor of divider are estimated to obtain
2 + x2
y = Gr = , (12) the optimal values.
x ^
(1) (2)
1 − x 1 In the proposed architecture, the set of inputs to the detector
^(2)
(1) are channel matrices denoted by H 1 , H 2 from two source
x2 − x2
nodes N1 , N2 to the relay node R, respectively, the received
h iT signal vectors at the relay node R and the noise variance σn2
where y , y1(s) y2(s) y1(d) y2(d) .
at the destination node in case of using the MMSE detector.
The log likelihood ratio (LLR) combination method is used These inputs can be fetched at every rising edge of the system
(1) (2) (1) (2)
to transform both xi + xi and xi − xi into the target clock pulse.
(1) (2)
network coded signal xi ⊕ xi , which is expressed as In order to achieve high-speed signal processing for the
inputs, pipeline computing and parallel operation are employed
(s) (d)
P (yi yi |xi
(1) (2)
⊕ xi = 1) in the proposed architecture. The operation of the proposed
(1) (2) (s) (d)
L(xi ⊕ xi |yi yi ) = (s) (d) (1) (2)
, architecture is described as follows. Firstly, the fading channel
P (yi yi |xi ⊕ xi = −1) matrices H 1 , H 2 are passed through two modules “Combina-
(13)
tion” and “HV −1 ” to obtain H and Ĥ as given by Eqs. (3)
where i = 1, 2. H
The LLRs can be calculated from equations (13) as follows and (6), respectively. Ĥ is then transformed to Ĥ by the
[16]: “Hermitian Transposition” module. Delay is introduced when
the data passes though the “Combination”, “HV −1 ” and
(d) 2
−(yi ) “Hermitian Transposition” modules, each with one period (T ).
LLRSi = exp (2) 2
× H
2(σi ) 2 2
(14) As a result, Ĥ and Ĥ data arrive the Matrix Multiplier
(s) (s)
−(yi −2) −(yi +2)
exp (1) 2
+ exp (1) 2
module. Secondly, the output of “Matrix Multiplier” module
2(σi ) 2(σi )
HH H is obtained after four system clocks. In the case of
designing the ZF detector, the value ofHH H is transferred
2
(s)
−(y )
LLRDi = exp i
(1) 2
× to the “Matrix Inversion” module. While in the case of the
2(σi )
(d) 2
(d) 2
(15) MMSE detector, it is added with σn2 I which is delayed by five
−(yi −2) −(yi +2)
exp (2) 2 + exp (2) 2 system clocks to guarantee the system’s synchronization. The
2(σi ) 2(σi )
2 remaining signal processing operations of the two detectors
(i) are the same. The output of the “Matrix Inversion” module
where σk = GH G σn2 denotes the noise variance H
k,k
corresponding to the k-th output stream of the k-th user from K −1 and Ĥ , which are delayed by (w + c + 20)Ts for ZF
^(2)
(1)
and (w +c+21)Ts for MMSE. Then, the outputs are passed to
the linear detector. The PNC symbol xi ⊕ xi and is then “Matrix Multiplier” module to generate the combining weight
given as follows matrices GZF and GMMSE , respectively. Here Ts denotes the
system clock period. Finally, the received signal vector from
^(2)
(1) −1 if LLRSi ≥ LLRDi
xi ⊕ xi = (16) source node is multiplied by the combining weight matrix G to
+1 if LLRSi < LLRDi
estimate the summation and difference of the received signals
As a result, the PNC symbols can be mapped by following. from two sources given by (12) and LLR’s values in order
to produce the decision value of x1^ ⊕ x2 . As a result, the
(
(s)
^(2)
(1) sign(|yi | − γ) if (GGH )i,i < (GGH )k,k
xi ⊕ xi = (d) system latency for ZF and MMSE detector can be respectively
sign(γ − |yi |) otherwise
calculated as
(17) w + c + 30
where γ is the decision threshold and can be selected opti- td = (18)
F
mally, and k = i + 2. Fig. 9 and Fig. 10 show the simulation
w + c + 31
results using linear detection based on ZF an MMSE detector, td = (19)
respectively [16]. F
Some main modules that basically decide the system perfor-
III. H ARDWARE A RCHITECTURE mance will be described, evaluated and optimized in following
Based on Eqs. (10), (11), we propose a hardware archi- subsections.
tecture of the digital processing unit of the MIMO-SDM-
PNC two-way relay system based on the ZF and MMSE A. Multiplier and Divider
detector as illustrated in Fig. 2 and Fig. 3, respectively. The In the proposed architecture, the complex divider is used to
architecture is designed to take advantages of the FPGA, calculate the inversion of a 4×4 matrix. In this case, the divisor
namely pipeline computing and parallel operation. Moreover, is actually greater than dividend. The calculation executed on
in order to analyze and optimize the proposed architecture, the FPGA is integer based. Therefore, the quotient is likely
Fig. 2. The architecture of the signal processing unit at the relay node using ZF detector in MIMO-SDM-PNC scheme.
Fig. 3. The architecture of the signal processing unit at the relay node using MMSE detector in MIMO-SDM-PNC scheme.
to be zero. For not losing in system channel information, the row and the m-th column and comatrix P A can be calculated
dividend must be multiplied with a scale factor a as respectively as
Anm = det(Anm ) (22)
2c a = qb + r, (20)
m+n m+n
where a, q, b, r, c ∈ Z. In this paper, the divider is imple- P A = ((−1) Amn ) = ((−1) Anm )T (23)
mented based on pipeline architecture. The divider has w + c If the determinant of the matrix A is different from zero, the
stages depicted as Fig. 4 inverse matrix of A can be calculated as
The value of the scale factor c is selected corresponding
1
to the defined accuracy. Its maximum value is chosen as the A−1 = PA (24)
width of the input data bus w. det(A)
Operation of the complex number divider is shown by The determinant of matrix A and the minor Ann are calculated
Fig. 5. The result of quotient dividing Q is obtained after as
w + c + 4 system clocks.
N
X −1
B. Complex Matrix Multiplier det(A) = A1j det(A1j ), (25)
In the proposed architecture, the complex matrix multiplier j=1
TABLE II
TABLE 2. U SED RESOURCE OF MIMO-SDM-PNC USING MMSE
DETECTOR
[5] J.N. Laneman and G.W. Wornell, “Energy-efficient antenna sharing and
relaying for wireless networks,” in IEEE Wireless Commun. and Networ.
Confe. 2000, vol. 1, Oct 2000.
[6] A. Sendonaris and E. Erkip and B. Aazhang, “User cooperation diver-
sity. Part II. Implementation aspects and performance analysis,” IEEE
Transactions on Communications, vol. 51, no. 11, pp. 1939-1948, Nov
2003.
[7] G. Scutari, S. Barbarossa, and D. Ludovici, “Cooperation diversity in
Fig. 10. BER performance of the MIMO-SDM-PNC using MMSE . multihop wireless networks using opportunistic driven multiple access,”
in Proc. SPAWC 2003, pp. 170-174, June 20033.
[8] O. Munoz, A. Agustin, and J. Vidal, “Cellular capacity gains of
cooperative MIMO transmission in the downlink,” in Proc. Int. Zurich
V. C ONCLUSION Seminar on Communications (IZS), pp. 22-26, Feb 2004.
[9] J. Tang and X. Zhang, “Cross-layer resource allocation over wireless
In this paper, the MIMO-SDM-PNC system with ZF and relay networks for quality of service provisioning,” IEEE Journal on
MMSE detector is designed and implemented based on the Selected Areas in Communications, vol. 25, no. 4, pp. 645-656, May
2007.
FPGA. A number of architectures and designs are analyzed to [10] S. Katti and H. Rahul and W. Hu and D. Katabi and M. Medard and
find out the high performance solution. Moreover, some main J. Crowcroft, “XORs in the Air: Practical Wireless Network Coding,”
system parameters as the width of data input bus and thescale IEEE/ACM Transactions on Networking, vol. 16, no. 3, pp. 497-510,
June 2008.
factor of divider that influenced the system performance were [11] P. Larsson and N. Johansson and K. -. Sunell, “Coded Bi-directional
also evaluated. The implementation results demonstrate that Relaying,” 2006 IEEE 63rd Vehicular Technology Conference, vol. 2,
the proposed design achieves high throughput and low latency. pp. 851-855, May 2006.
[12] S. Kim and J. Chun, “Network Coding with Linear MIMO Pre-
Equalizer Using Modulo in Two-Way Channel,” 2008 IEEE Wireless
R EFERENCES Communications and Networking Conference, pp. 517-521, March 2008.
[13] S. Zhang et al.,, “Physical layer network coding,” in Proc. 12th An-
[1] G. Eason, B. Noble, and I. N. Sneddon, “Relay-based deployment con- nual International Conf. on Mobile Computing and Networking (ACM
cepts for wireless and mobile broadband radio,” IEEE Communications MobiCom06), pp. 358-365, Sept 2006.
Magazine, vol. 42, no. 9, pp. 80-89, Sept 2004. [14] S. Zhang, S. Liew, “Physical layer network coding with multiple anten-
[2] A. Sendonaris and E. Erkip and B. Aazhang, “User cooperation diversity. nas,” in Proc. 12th Annual International Conf. on Mobile Computing
Part I. System description,” IEEE Transactions on Communications, vol. and Networking (ACM MobiCom06), pp. 358-365, Sept 2006.
51, no. 11, pp. 1927-1938, Nov 2003. [15] T. Yang and X. Yuan and P. Li and I. B. Collings and J. Yuan, “A new
[3] J. N. Laneman and D. N. C. Tse and G. W. Wornell, “Cooperative eigen-direction alignment algorithm for physical-layer network coding
diversity in wireless networks: Efficient protocols and outage behavior,” in MIMO two-way relay channels,” 2011 IEEE International Symposium
IEEE Transactions on Information Theory, vol. 50, no. 12, pp. 3062- on Information Theory Proceedings, pp. 2253-2257, July 2011.
3080, Dec 2004. [16] D. H. Vu and V. B. Pham and X. N. Tran, “Physical network coding for
[4] M. O. Hasna and M. -. Alouini, “Optimal power allocation for relayed bidirectional relay MIMO-SDM system,” 2013 International Conference
transmissions over Rayleigh-fading channels,” IEEE Transactions on on Advanced Technologies for Communications (ATC 2013), pp. 141-
Wireless Communications, vol. 3, no. 6, pp. 1999–2004, Nov 2004. 146, Oct 2013.
Fig. 11. Pipeline stages of signal processing for MIMO-SDM-PNC based on ZF detector
Fig. 12. Pipeline stages of signal processing for MIMO-SDM-PNC based on MMSE detector
TABLE III
TABLE 3. L ATENCY AND THROUGHPUT OF MIMO-SDM-PNC USING ZF
AND MMSE DETECTORS