MULTIPLE IN MULTIPLE OUT NETWORK CODED AMPLIFY AND FORWARD RELAYING SCHEME FOR THREE NODE BIDIRECTIONAL COOPERATION

23-04-2015 дата публикации
Номер:
US20150109992A1
Принадлежит: THOMSON LICENSING
Контакты:
Номер заявки: 36-56-1453
Дата заявки: 07-11-2014

RELATED APPLICATIONS

[0001]

This application is a divisional of co-pending U.S. application Ser. No. 13/810,408, filed Jan. 15, 2013, which is a 371 of International Application PCT/US10/43655 filed Jul. 29, 2010 herein incorporated by reference.

FIELD OF THE INVENTION

[0002]

The present invention is directed to a three node cooperation scheme to assist in bidirectional transmissions (communications) of the draft IEEE 802.11n standard.

BACKGROUND OF THE INVENTION

[0003]

In multicast and broadcast applications, data are transmitted from a server to multiple receivers over wired and/or wireless networks. A multicast system as used herein is a system in which a server transmits the same data to multiple receivers simultaneously, where the receivers form a subset of all the receivers up to and including all of the receivers. A broadcast system is a system in which a server transmits the same data to all of the receivers simultaneously. That is, a multicast system by definition can include a broadcast system.

[0004]

Consider multicast (downlink) and multi-access (uplink) channels with one access point (AP) and several nodes. In the IEEE 802.11n draft standard, a reverse direction (RD) protocol is introduced for fast scheduling of bidirectional traffic flows within a transmission opportunity (TXOP). The reverse direction protocol permits (allows) the node, which has obtained the TXOP to grant reverse directional transmissions to another node while it is still in control of the TXOP. If the channel conditions between the nodes are inadequate (poor) then transmissions between the two nodes suffer. That suffering may be reduced data rate and/or throughput.

[0005]

In the IEEE 802.11n draft standard, a reverse direction (RD) protocol has been proposed as in FIG. 1. The reverse direction protocol of the IEEE 802.11n draft standard only schedules bidirectional transmission between two nodes. Each node is both a source node and a destination node. There is no existing scheduling protocol for three-node bidirectional transmissions in IEEE 802.11 WLAN standards. FIG. 1 illustrates the conventional unidirectional cooperation using a half-duplex relay node (RN). FIG. 1a shows the first stage of communication, in which Node1transmits (sends, communicate) data S1to both Node2and the RN. FIG. 1b shows stage 2 of communication, in which the RN transmits (communicates, sends) data S1to Node2. That is, the RN transmits (communicates, forwards, sends) data S1as Ŝ1to Node2. Correspondingly (and not shown), in the third stage of communication, Node2transmits (sends, communicate) data S2to both Node1and the RN. In the fourth stage of communication, the RN transmits (communicates, forwards, sends) data Ŝ2to Node1. That is, the RN transmits (communicates, forwards, sends) data S2as Ŝ2to Node1. Thus, in the conventional approach, there are four stages (phases) to complete communications using the half-duplex RN to assist Node1and Node2.

[0006]

Network-coded three-node bidirectional cooperation with three stages (i.e., the reception of signals from nodes (source and destination) at the RN are orthogonal (separate)) has been studied, using Decode-and-Forward, Soft Decode-and-Forward, and Amplify-and-Forward in a single-antenna system, and a case when L1=L2=1 and LR=2 etc, respectively. Note that Li, i=1,2,R represents the number of antennas at Node1, Node2and RN respectively. The present invention uses Amplify-and-Forward for the general MIMO case with an arbitrary number of antennas at the nodes. This has not been addressed in any publications known to the Applicants.

SUMMARY OF THE INVENTION

[0007]

As used herein a node includes (but is not limited to) a station (STA), a mobile device, a mobile terminal, a dual mode smart phone, a computer, a laptop computer or any other equivalent device capable of operating under the IEEE 802.11n draft standard.

[0008]

Consider multicast (downlink) and multi-access (uplink) channels with one access point (AP) and several nodes. In the IEEE 802.11n draft standard, a reverse direction (RD) protocol is introduced for fast scheduling of bidirectional traffic flows within a transmission opportunity (TXOP). The reverse direction protocol permits (allows) the node, which has obtained the TXOP to grant reverse directional transmissions to another node while it is still in control of the TXOP. However, when the channel state (channel conditions) between the two nodes is not sufficient for providing fast and reliable transmissions (communication) between them, cooperation through a third node, a half-duplex relay node (RN), may be involved to assist transmissions (communications). When the transmission between these two nodes involves cooperation through a third node, a half-duplex relay node (RN), the situation becomes more complicated, and wireless network coding can be utilized to further increase system throughput. Each node is both a source node and a destination node.

[0009]

In the present invention, as shown in FIG. 2 and described more fully below, wireless network coding is introduced into the system and combined with bidirectional cooperation to increase system throughput. The present invention describes a network-coded amplify-and-forward (NCAF) relaying scheme in such a three-node bidirectional cooperation scenario.

[0010]

In three-node bidirectional cooperation scheme of the present invention, two nodes, Node1and Node2, are both source and destination nodes, and the RN is a relay node, assisting the bidirectional transmission between Node1and Node2. The relay node (RN) sequentially receives signals from both Node1and Node2, combines the two signals with pre-coding matrices for both of them, and broadcasts the mixed signal to both nodes on orthogonal channels. Each of the nodes (source and destination) receives both the transmission (communication) of the desired signal from the other node, and the transmission (communication) of the mixed signal from the RN. Each node can jointly decode the data it desires based on the knowledge of the signal it sent out (transmitted, communicated). The process is shown in FIG. 3, which will be further described below. The present invention not only describes the above network-coded amplify-and-forward (NCAF) relaying scheme, but also solves the design problem of the pre-coding matrices at RN for the received signals from the nodes (source and destination), so as to maximize the instantaneous capacity of the bidirectional cooperation system, subject to a total power constraint at the RN, given channel state information (CSI) in two cases:

[0011]

(1) Without CSI of direct links at the RN: Only CSI of the channels from the nodes (source and destination) to the RN, and the channels from the RN to the nodes (source and destination), are known at the RN. CSI of the channels between the two nodes (source and destination) is not known at the RN.

[0012]

(2) With CSI of the direct links at the RN: CSI of the channels from the nodes (source and destination) to the RN, and the channels from RN to the nodes (source and destination), and the channels between the two nodes (source and destination) are known at the RN.

[0013]

In the Network-Coded Amplify-and-Forward (NCAF) relaying scheme of the present invention, the RN no longer forwards the amplified received signals from one node to another as in conventional amplify-and-forward cooperation. Instead, the RN combines two received signals from two nodes by firstly multiplying them with pre-coding matrices. Then the RN broadcasts (multicasts) the combined signal, which contains the mixed data of the bidirectional traffic flow. Each end node receives the signal from the RN. The nodes can then jointly decode its desired signal based on the knowledge of the signal it has sent out (transmitted, communicated). There is still diversity in the cooperation.

[0014]

The NCAF relaying scheme of the present invention, may prove to be essential to the future the IEEE 802.11 draft Very High Throughput (VHT) standard. The advantage of the NCAF relaying scheme of the present invention is that only simple processing, i.e., linear pre-coding, is needed at the relay node (RN). It is also compatible with conventional cooperation using an amplify-and-forward relaying scheme. The NCAF relaying scheme of the present invention also solves the problem when the RN is not able to decode the received data due to an insufficient number of antennas equipped at the RN and is always feasible for any multiple-antenna systems.

[0015]

A method and apparatus are described including receiving a first signal including first data in a first time slot of a first channel, receiving a second signal including second data in a second time slot of a second channel, determining a first pre-coding matrix, determining a second pre-coding matrix, applying the first pre-coding matrix to the first data to produce pre-coded first data, applying the second pre-coding matrix to the second data to produce second pre-coded data, generating a third signal by combining the pre-coded first data and the pre-coded second data and transmitting the third signal on the first channel and on the second channel. Also described are a method and apparatus including transmitting a first signal, receiving a second signal and jointly decoding the second signal including a first training sequence by removing the first training sequence and removing the first signal.

BRIEF DESCRIPTION OF THE DRAWINGS

[0016]

The present invention is best understood from the following detailed description when read in conjunction with the accompanying drawings. The drawings include the following figures briefly described below:

[0017]

FIG. 1A shows the first stage of communication, in which Node1transmits (sends, communicate) data S1to both Node2and the RN.

[0018]

FIG. 1B shows stage 2 of communication, in which the RN transmits (communicates sends) data S1to Node2.

[0019]

FIG. 2A shows the first stage of communication of the present invention, in which Node1transmits (sends, communicates) data S1to both Node2and the RN.

[0020]

FIG. 2B shows the second stage of communication of the present invention, in which Node2transmits (sends, communicate) data S2to both Node and the RN.

[0021]

FIG. 2C shows the third stage of communication of the present invention, in which the RN combines (mixes) data Ŝ12for transmission (communication) to both Node1and Node2.

[0022]

FIG. 3A is a block diagram of the operation of an exemplary embodiment of the transmission side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention.

[0023]

FIG. 3B is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node1.

[0024]

FIG. 3C is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node2.

[0025]

FIG. 4A shows the RN applying the pre-coding matrices to the training sequences it receives and forwarding them.

[0026]

FIG. 4B shows the RN estimating the incoming channel matrices, multiplying them with the pre-coding matrices, quantizing the resulting matrices, and feeding them back. The RN also sends out its own training sequence to the nodes (source and destination) to estimate the channel state (channel conditions) from the RN to them.

[0027]

FIG. 5A shows the RN applying the pre-coding matrices to the training sequences it receives and forwarding them.

[0028]

FIG. 5B shows the RN estimating the incoming channel matrices, multiplying them with the pre-coding matrices, quantizing the resulting matrices, and feeding them back. The RN also sends out its own training sequence to the nodes (source and destination) to estimate the channel state (channel conditions) from the RN to them.

[0029]

FIG. 6 is a flowchart of an exemplary embodiment of the present invention from the perspective of a node (source and destination).

[0030]

FIG. 7 is a flowchart of an exemplary embodiment of the present invention from the perspective of a relay node.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0031]

FIG. 2 shows the operation of the Network-Coded Amplify-and-Forward relaying scheme for bidirectional cooperation of the present invention using a half-duplex relay node. FIG. 2a shows the first stage of communication, in which Node1transmits (sends, communicates) data S1to both Node2and the RN. In the second stage of communication as shown in FIG. 2b, Node2transmits (sends, communicate) data S2to both Node1and the RN. In the third stage of communication as shown in FIG. 2c, the RN combines (mixes) data Ŝ12for transmission (communication) to both Node1and Node2. Data Ŝ12is formed by applying pre-coding matrices to data S1and data S2. The combination of data Ŝ12is f(S1+S2). The number of stages has thus been reduced from four stages to three stages. It should be noted that in addition to applying pre-coding matrices to the data, beamforming matrices may also be applied to the data.

[0032]

A system model and some notation is introduced first. Xiis the signal transmitted from Node, (i=1,2,R, and NodeRdenotes the RN). Qiis the beamforming matrix at Nodei, and it is an identity matrix if beamforming is not used. Hijis the channel matrix from Nodejto Nodei. Yijand Nijare the received signal and noise from Nodejto Nodei, elements are assumed to be independent and identically distributed Gaussian with variance σn2. Wiis the pre-coding matrix applied to YRiat RN. The total transmitted power is Piat Nodei(i=1,2) and PRat the RN.

[0033]

The RN receives YR1=HR1Q1X1+NR1from Node1in the 1sttime slot, and YR2=HR2Q2X2+NR2from Node2in the 2ndtime slot. Then the RN mixes the weighted received signals as its broadcast signal

[0000]


XR=W1YR1+W2YR2=W1HR1Q1X1+W2HR2Q2X2+W1NR1+W2NR2.

[0034]

The reception and decoding at one node (source and destination) is used as an example. It goes without saying that demodulation is performed at the reception end. The processing at the other node (source and destination) is similar. Node1receives Y12=H12Q2X2+N12from Node2in the 2ndtime slot, and Y1R=H1RXR+N1Rfrom the RN in the 3rdtime slot, i.e., Y1R=H1RW1HR1Q1X1+H1RW2HR2Q2X2+H1RW1NR1+H1RW2NR2+N1R. The matrix form is

[0000]

[Y12Y1R]=[0N1H1RW1HR1]Q1X1+[H12H1RW2HR2]Q2X2+[IN10N1×NR0N1×NR0N10N1H1RW1H1RW2IN1][N12NR1NR2N1R],(1)

[0000]

i.e., Y1=D1X1+A1X2+B1N1, where Y1=[Y12Y1R]T∈C2L1×1, 0Ni×Nj∈CLi×Lj is a zero matrix, and IN∈CN×Nis an identity matrix. Note that at Node1, X1is known, but X2is unknown and to be detected. N1=[N12NR1NR2N1R]T∈C2(L1+LR)×1is the noise vector at Node1, and the matrices,

[0000]

D1=[0N1H1RW1HR1]Q1,A1=[H12H1RW2HR2]Q2andB1=[IN10N1×NR0N1×NR0N10N1H1RW1H1RW2IN1]

[0000]

are assumed known. Based on the knowledge of X1, Node1can obtain Z1=Y1−D1X1=A1X2+B1N1, where Z1is the equivalent received signal, and A1is the equivalent channel matrix for signal X2. Then Node1can jointly decode X2.

[0035]

Similarly, Z2=A2X1+B2N2, where Z2, A2, B2and N2are defined by exchanging the subscripts “1” and “2”, and “N1” and “N2” in their counterparts.

[0036]

The problem is to determine W1and W2, Wi∈CLR×LR, i=1,2, to maximize the instantaneous capacity of the system, subject to the transmit power constraint at the RN. W1and W2are the pre-coding matrices. That is, determine W1and W2, to maximize

[0000]

f=logdet(I2N1+P2N2σn2(A1A1H)(B1B1H)-1)+logdet(I2N2+P1N1σn2(A2A2H)(B2B2H)-1),subjecttoP1N1tr{W1HR1Q1Q1HHR1HW1H}+σn2tr{W1W1H}+P2N2tr{W2HR2Q2Q2HHR2HW2H}+σn2tr{W2W2H}=PR,(1)

[0000]

where tr(X) represents the trace of the matrix X.
Letting Qi, i=1,2 be a unitary matrix, the constraint can be simplified to

[0000]

P1N1tr{W1HR1HR1HW1H}+σn2tr{W1W1H}+P2N2tr{W2HR2HR2HW2H}+σn2tr{W2W2H}=PR.(2)

[0037]

In the first case, the CSI of the channels (links) from Nodeito the RN and the RN to Nodej, are assumed available at the RN. The CSI of the links (channels) between Nodeiand Nodej, i,j=1,2 and i≠j is not available. In this scenario, it is necessary to maximize an upper bound of f instead of f itself due to the lack of information in it. That is, determine W1and W2, to maximize

[0000]

f1=logdet(IN1+P2N2σn2H1RW2HR2HR2HW2HH1RH(IN1+H1RW1W1HH1RH+H1RW2W2HH1RH)-1)+logdet(IN2+P1N1σn2H2RW1HR1HR1HW1HH2RH(IN2+H2RW1W1HH2RH+H2RW2W2HH2RH)-1)subjecttoP1N1tr{W1HR1HR1HW1H}+σn2tr{W1W1H}+P2N2tr{W2HR2HR2HW2H}+σn2tr{W2W2H}=PR(3)

[0000]

as shown in Equation (2).

[0038]

In the second case, the CSI of channels from Node, to the RN, from the RN to Nodej, and from Nodeito Nodej, are assumed to be available to the RN, i,j≠1,2 and i≠j. In this scenario, the design problem is to maximize (1) subject to (2).

[0039]

By the singular value decomposition (SVD) theorem, the channels (links) can be decomposed to HR1=UR1AR1/2VR1H, HR2=UR2AR21/2VR2H, H1R=U1RA1R1/2V1RHand H2R=U2RA2R1/2V2RH, where UR1,UR2,V1R,V2R∈CLR×LR, VR1,U1R∈CL1×L1, and VR2,U2R∈CL2×L2 are unity matrices; Aij1/2∈CLi×Lj, i, j=1,2,R, are singular value matrices. In particular, Aij=Aij1/2(Aij1/2)H=diag{λij,k}∈CLi×Li, i, j=1,2,R, where ()Tand ()Hrepresent the matrix transpose and conjugate transpose operations, respectively. Also define T=V1RHRV2R∈CLR×LR and denote T=(tij), i, j=1, . . . , LR.

[0040]

When the CSI of direct links between Node1and Node2is not available, let W1=V2R{tilde over (W)}1UR1Hand W2=V1R{tilde over (W)}2UR2H, where {tilde over (W)}1, {tilde over (W)}2∈CLR×LR are to be determined. There is no closed form solution. But {tilde over (W)}land {tilde over (W)}2can be solved iteratively using Newton's method.

[0041]

Furthermore, the problem statement can be rewritten in the following form, where the notation will be explained after the approach is introduced.

[0000]


Determine λ, to minimize f2(λ)   (4)

[0000]


subject to λ≧0,   (5)

[0000]


Sλ=q.   (6)

[0000]


The Lagrangian function is L(λ, μ)=f2(λ) −μT(Sλ−q),   (7)

[0000]

where μ, is the vector containing the Lagrangian multipliers. Using Newton's method, the following iterative approach is used to solve for λ:

[0042]

Step 1: Initiate λ0∈(0,max_λ).

[0043]

Step 2: In each iteration, solve

[0000]

[2f2(λk)-ST-S0]vk=[STμk-f2(λk)Sλk-q]forvk=(vλkvμk).(8)

[0044]

Step 3: Take as next iteration

[0000]

(λk+1μk+1)=(λkμk)+(vλkvμk).(9)

[0045]

Step 4: If sum(sign(λk+1))≠length(λk+1) or sum(sign(max_λ−λk+1))≠length(λk+1), go back to Step 1. Otherwise, go to Step 5.

[0046]

Step 5: If ∥vλk2<Threshold, stop. Otherwise, k=k+1, and go to Step 2.

[0047]

In Step 4, given x=(x1, . . . , xM)Tis a column vector or length M, length(x)=M and

[0000]

sum(x)=i=1length(x)xi·sign(x)={1,ifx>00,ifx=0-1,ifx<0,andsign(x)=(sign(x1),,sign(xM))T.

[0048]

Condition α1is defined as “when Li≧LR, or when both Li<LRand Li(Li−1)≧LRare satisfied”, and condition βiis defined as “when both Li<LRand Li(Li−1)≦LR−1 are satisfied”. Therefore, there are three cases of solution as follows:

[0049]

General Case 1: When α1and α2exist, both {tilde over (W)}1and {tilde over (W)}2are identity matrices multiplied by constants, respectively, i.e., {tilde over (W)}11ILR, {tilde over (W)}22ILR, λ1, λ2≧0. The notation in the iterative approach is as follows:

[0000]

λ=(λ1,λ2)T,max_λ=(PR/daσn2,PR/dbσn2)T,µ=μandvk=(vλ1k,vλ2k,vμk)T.S=(da,db),q=PR/σn2,whereca,i=P1L2σn2λR1,i+1,cb,i=P2L2σn2λR2,i+1,i=1,,M,da=i=1Mca,i,

[0000]

db=i=1Mcb,i,

[0000]

and M=min, (L1, L2, LR). The Hessian and gradient of f2(λ) are expressed as following:

[0000]

2f2(λk)=(2f2(λk)λ22f2(λk)λ1λ22f2(λk)λ1λ22f2(λk)λ22)andf2(λk)=(f2(λk)λ1f2(λk)λ2),wheref2(λ)λ1=i=1M(-m1,i+m2,i-ca,im3,i+m4,i),f2(λ)λ2=i=1M(-cb,im1,i+m2,i-m3,i+m4,i),2f2(λ)λ12=i=1M(m1,i2-m2,i2+ca,i2m3,i2-m4,i2),2f2(λ)λ1λ2=i=1M(cb,im1,i2-m2,i2+ca,im3,i2-m4,i2),2f2(λ)λ22=i=1M(cb,i2m1,i2-m2,i2+m3,i2-m4,i2),andm1,i=λ1R,i1+λ1λ1R,i+λ2cb,iλ1R,i,m2,i=λ1R,i1+λ1λ1R,i+λ2λ1R,i,m3,i=λ2R,i1+λ1ca,iλ2R,i+λ2λ2R,i,m4,i=λ2R,i1+λ1λ2R,i+λ2λ2R,i.

[0050]

General Case 2: When αland β2exist, {tilde over (W)}1is an identity matrix multiplied by a constant, i.e., {tilde over (W)}=λ1ILR, λ1≧0; while {tilde over (W)}2=A21/2=diag{λ2,11/2, . . . , λ2,LR1/2}, λ2,i≧0, i=1, . . . , LR, is a diagonal matrix. The notation in the iterative approach is as follows:

[0000]

λ=(λ1,λ2,1,,λ2,LR)T,max_λ=(PR/daσn2,PR/cb,1σn2,L,PR/cb,Mσn2,1LR-MT)T,µ=(μ1,L,μL2(L2-1)+1)T,vk=(vλk,vλ2,1k,L,vλ2,LRk,vμ1k,L,vμL2(L2-1)-1k)T,1N=(1,,1N).S=[0L2(L2-1)×1S2dacb,1,L,cb,M,01×(LR-M)],q=(0L2(L2-1)×1PR/σn2),whereca,i=P1L1σn2λR1,i+1,cb,i=P2L2σn2λR2,i+1,i=1,L,M,da=i=1Mca,i,

[0000]

and M=min(L1, L2, LR).

[0051]

And

[0000]

S2=[Re{s2}Im{s2}]RL2(L2-1)×LR,

[0000]

where Re{·} and Im{·} are the functions which take the real and imaginary parts of the variables, and s2comes from the linear equations

[0000]

k=1LRλ2,ktki*tkj=0,

[0000]

1≦i<j≦L2, i.e.,

[0000]

s2=(t11*t12t21*t22LtLR-1*tLR,2t11*t13t21*t23LtLR-1*tLR,3MMOMt11*t1,L2t21*t2,L2LtLR-1*tLR,2t12*t13t22*t23LtLR,2*tLR,3MMOMt12*t1,L2t22*t2,L2LtLR,2*tLR,L2MMOMt1,L2-1*t1,L2t2,L2-1*t2,L2LtLR,L2-1*tLR,L2)CL2(L2-1)2×LR.2f2(λk)=(2f2(λk)λ122f2(λk)λ1λ2,1L2f2(λk)λ1λ2,LR2f2(λk)λ1λ2,12f2(λk)λ2,12L2f2(λk)λ2,1λ2,LRMMOM2f2(λk)λ1λ2,LR2f2(λk)λ2,1λ2,1L2f2(λk)λ2,LR2)and,wheref2λ1=i=1M(-m1,i+m2,i-ca,im3,i+m4,i),f2(λ)λ2,j={-cb,jm1,j+m2,j+i=1Mtji2(-m3,i+m4,i),1jMi=1Mtji2(-m3,i+m4,i),M+1jLR,2f2(λ)λ12=i=1M(m1,i2-m2,i2+ca,i2m3,i2-m4,i2),2f2(λ)λ1λ2,j={cb,jm1,j2-m2,j2+i=1Mtji2(ca,im3,i2-m4,i2),1jMi=1Mtji2(ca,im3,i2-m4,i2),M+1jLR,2f2(λ)λ2,j2={cb,j2m1,j2-m2,j2+i=1Mtji2(m3,i2-m4,i2),1jMi=1Mtji4(m3,i2-m4,i2),M+1jLR,2f2(λ)λ2,jλ2,l=i=1Mtji2tli2(m3,i2-m4,i2),1j,lLR,jl,m1,i=λ1R,i1+λ1λ1R,i+λ2cb,iλ1R,i,m2,i=λ1R,i1+λ1λ1R,i+λ2λ1R,i,m3,i=λ2R,i1+λ1ca,iλ2R,i+k=1LRλ2,ktki2λ2R,i,m4,i=λ2R,i1+λ1λ2R,i+k=1LRλ2,ktki2λ2R,i.

[0052]

General Case 3: When β1and β2exist, both W1%=A11/2={λ1,11/2,L,λ1,LR1/2}, λ1,i≧0, i=1, L, LR, and W2%=A21/2=diag{λ2,11/2,L,λ2,LR}, λ2,i≧0, i=1, L, LR, are diagonal matrices. The notation in the iterative approach is as follows:

[0000]

λ=(λ1,1,Lλ1,NR,λ2,1,Lλ2,LR)T,µ=(μ1,L,μL2(L2-1)+1)T,max_λ=(PR/ca,1σn2,L,PR/ca,Mσn2,1LR-MT,PR/cb,1σn2,L,PR/cb,Mσn2,1LR-MT)T,1N=(1,N,1),andvk=(vλ1,1k,L,vλ1,LRk,vλ2,1k,L,vλ2,LRk,vμ1k,L,vμL2(L2-1)+1k)T.S=[S10L1(L1-1)×10L2(L2-1)×1S2ca,1,L,ca,M,01×(LR-M)cb,1,L,cb,M,01×(LR-M)],q=(0[L1(L1-1)+L2(L2-1)]×1PR/σn2),whereca,i=P1L1σn2λR1,i+1,cb,i=P2L2σn2λR2,i+1,i=1,L,M,andM=min(L1,L2,LR).

And

[0053]

S1=[Re{s1}Im{s1}]RL1(L1-1)×LRandS2=[Re{s2}Im{s2}]RL2(L2-1)×LR,

[0000]

where Re{·} and Im{·} are the functions which take the real and imaginary part of the variables, s1and s2come from the linear equations

[0000]

k=1LRλ1,ktiktjk*=0,1i<jL1,andk=1LRλ2,ktki*tkj=0,1i<jL2,

[0000]

respectively, i.e.,

[0000]

s1=(t11t21*t12t22*Lt1,Lgt2,LR*t11t31*t12t32*Lt1,LRt3,LR*MMOMt11tL1,1*t12tL1,2*Lt1,LRtL1,LR*t21t31*t22t32*Lt2,LRt3,LR*MMOMt21tLi-1*t22tL1,2*Lt2,LRtL1,LR*MMOMtL1-1,1tL1,1*tL1-1,2tL1,2*LtL1-1LRtL1,LR*)CL1(L1-1)2×LR,ands2=(t11*t12t21*t22LtLR-1*tLR,2t11*t13t21*t23LtLR-1*tLR,3MMOMt11*t1,L2t21*t2,L2LtLR-1*tLR,2t12*t13t22*t23LtLR,2*tLR,3MMOMt12*t1,L2t22*t2,L2LtLR,2*tLR,L2MMOMt1,L2-1*t1,L2t2,L2-1*t2,L2LtLR,L2-1*tLR,L2)CL2(L2-1)2×LR.2f2(λk)=(2f2(λk)λ1,12L2f2(λk)λ1,1λ1,LR2f2(λk)λ1,1λ1,2L2f2(λk)λ1,1λ2,LRMOMMOM2f2(λk)λ1,1λ1,LRL2f2(λk)λ1,LR22f2(λk)λ2,1λ1,LRL2f2(λk)λ1,LRλ2,LR2f2(λk)λ1,1λ2,1L2f2(λk)λ2,1λ1,LR2f2(λk)λ2,12L2f2(λk)λ2,1λ2,LRMOMMOM2f2(λk)λ1,1λ2,LRL2f2(λk)λ1,LRλ2,LR2f2(λk)λ2,1λ2,LRL2f2(λk)λ2,LR2),andf2(λk)=(f2(λk)λ1,1Lf2(λk)λ1.LRf2(λk)λ2,1Lf2(λk)λ2,LR)T,f2(λ)λ1,j={i=1Mtij2(-m1,j+m2,i)-ca,jm3,j+m4,j,1jMi=1Mtij2(-m1,i+m2,i),M+1jLR,f2(λ)λ2,j={-cb,jm1,j+m2,j+i=1Mtji2(-m3,i+m4,i),1jMi=1Mtji2(-m3,i+m4,i),M+1jLR,2f2(λ)λ1,j2={i=1Mtij2(m1,j2-m2,i2)+ca,j2m3,j2-m4,j2,1jMi=1Mtij2(m1,j2-m2,i2),M+1jLR,2f2(λ)λ1,j2=i=1Mtij2til2(m1,i2-m2,i2),1j,lLR,jl,2f2(λ)λ2,j2={cb,j2m1,j-m2,j2+i=1Mtji4(m3,i2-m4,i2),1jMi=1Mtji4(m3,i2-m4,i2),M+1jLR,2f2(λ)λ2,jλ2,l=i=1Mtij2til2(m3,i2-m4,i2),1j,lLR,2f2(λ)λ1,jλ2,l={tlj2(cb,im1,i2-m2,i2+ca,im3,i2-m4,i2),1j,lMtlj2(ca,im3,i2-m4,i2),1jM,M+1lLRtlj2(cb,im1,j2-m2,i2),M+1jNR,1lM,0,M+1j,lLR,m1,i=λ1R,i1+k=1LRλ1,ktik2λ1R,i+λ2,icb,iλ1R,i,m2,i=λ1R,i1+k=1LRλ1,ktik2λ1R,i+λ2,iλ1R,i,m3,i=λ2R,i1+λ1ca,iλ2R,i+k=1LRλ2,ktki2λ2R,i,m4,i=λ2R,i1+λ1λ2R,i+k=1LRλ2,ktki2λ2R,i.

[0054]

Denote

[0000]

M1=HR2[IL2+H12H(IL1+P2L2σn2H12H12H)-1P2L2σn2H12]HR2H,andM2=HR1[IL1+H21H(IL2+P1L1σn2H21H21H)-1P1L1σn2H12]HR1H.

[0000]

They are both Hermitian, and M1=UM1AM1UM1H, and M2=UM2AM2UM2H, with UM1, UM2∈CL×LR are unitary matrices, and AM1=diag {λMi,i} and AM2=diag{λM2,i} are diagonal matrices.

[0055]

Let W1=V2R{tilde over (W)}1UM2Hand W2=V1R{tilde over (W)}2UM1H. The problem to determine {tilde over (W)}1, {tilde over (W)}2∈CLR×LR, when the CSI of the direct links between Node1and Node2is available, the RN is the same form as above when the CSI for the direct links between Node1and Node2is not available and the iterative approach of finding the solution is almost the same as the three cases above by just replacing λR2,iand λR1,iby λM1,iand λM2,i, respectively.

[0056]

In the design problem, both nodes (source and destination) send out (transmit, communicate, forward) training sequences to the RN, so that the RN can estimate the incoming channels. The RN also needs to send out (transmit, communicate, forward) training sequence(s) for the nodes (source and destination) to estimate the channels (links) from the RN to each of them and also transmit (send out, forward, communicate) information regarding the pre-coding matrices the RN uses.

[0057]

Two basic data frame structures are proposed for use in the present invention:

[0058]

(1) The RN applies the pre-coding matrices to the training sequences it receives and forwards them, as in FIG. 4(a) and FIG. 5(a).

[0059]

(2) The RN estimates the incoming channel matrices, multiplies them with the pre-coding matrices, quantizes the resulting matrices, and feeds them back. It also sends out its own training sequence to the nodes (source and destination) to estimate the channel state (channel conditions) from the RN to them, as in FIG. 4(b) and FIG. 5(b). Still there are other channel estimations that need to be done, such as the CSI of the outgoing channels from RN to nodes (source and destination) at the RN and the CSI of the direct links at the RN. They are done by other frames, such as control frames, etc.

[0060]

Referring again to FIG. 3a, which is a block diagram of the operation of an exemplary embodiment of the transmission side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention. Data S1is transmitted (communicated) from Node1as signal X1to the RN in the first time slot and data S2is transmitted (communicated) from Node2as signal X2to the RN in the second time slot. The RN then pre-codes, mixes (combines) and multicasts (broadcasts) the pre-coded mixed data (XR) for receipt by both Node1and Node2. It goes without saying that the pre-coded mixed (combined) data is modulated.

[0061]

Referring again to FIG. 3b, which is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node1. Node1receives signal Y12from Node2and signal Y1Rfrom the RN and performs joint network and channel decoding. It goes without saying that the decoded data is demodulated.

[0062]

Referring again to FIG. 3c, which is a block diagram of the operation of an exemplary embodiment of the reception side of the Network-Coded Amplify-and-Forward relaying scheme of the present invention from the perspective of Node2. Node2receives signal Y21from Node1and signal Y2Rfrom the RN and performs joint network and channel decoding. It goes without saying that the decoded data is demodulated.

[0063]

That is, from the standpoint (perspective) of a node that holds (possesses) the transmission opportunity (TXOP), the node includes means for transmitting (sending out, communicating) a first signal having data and means for receiving a second signal. The transmitting and receiving means may be a transceiver or a separate transmitter and a separate receiver or any equivalent means. The node also has means for jointly decoding the second signal by removing (subtracting off) a training sequence and the first signal. Optionally, the node also includes means for decoding the second signal by accounting for the application of a first beamforming matrix to the data of the first signal and the application of a second beamforming matrix to the data of the second signal.

[0064]

From the standpoint (perspective) of a relay node (RN), the RN includes means for receiving a first signal in a first time slot of a first channel, means for receiving a second signal in a second time slot of a second channel, means for determining a first pre-coding matrix, means for determining a second pre-coding matrix, wherein the first pre-coding matrix and the second pre-coding matrix maximize a joint channel capacity of the first channel and second channel respectively, means for applying the first pre-coding matrix to first data, means for applying the second pre-coding matrix to second data, means for generating a third signal by mixing (combining) the pre-coded first data and the pre-coded second data and means for transmitting the third signal. The transmitting and receiving means may be a transceiver or a separate transmitter and a separate receiver or any equivalent means. The RN also includes means for generating a first estimated channel matrix for the first channel and a second estimated channel matrix for the second channel, means for inserting the first pre-coding matrix times the first estimated channel matrix and the second pre-coding matrix times the second estimated channel matrix between a training sequence of the third signal and means for quantizing the first pre-coding matrix times the first estimated channel matrix and means for quantizing the second pre-coding matrix times the second estimated channel matrix before the means for inserting is executed. Optionally, the RN also includes means for determining a first beamforming matrix, means for determining a second beamforming matrix and means for applying the first beamforming matrix to the first data and applying the second beamforming matrix to the second data before generating the third signal. The RN also optionally includes means for applying the first beamforming matrix to the first pre-coded matrix times the first estimated channel matrix and means for applying the second beamforming matrix to the second pre-coded matrix times the second estimated channel matrix before inserting the first pre-coded matrix times the first estimated channel matrix and the second pre-coded matrix times the second estimated channel matrix between the training sequence of the third signal.

[0065]

Referring again to FIG. 4, which is collectively simplified exemplary frame structures for the Network-Coded Amplify-and-Forward relaying scheme without beamforming at source nodes of the present invention. FIG. 4a shows the case where training sequences are sent from the source nodes. The RN sends out training sequences but the training sequences sent by the RN are effectively the training sequences that the RN received from Node1and Node2copied and returned to the source nodes (Node1and Node2). In the third stage the RN transmits the two training sequences and the mixed data XRto Nodei. Pre-coding matrices are applied to both the training sequences and to the mixed data XR. Pre-coding matrix W1is applied to T1(the first training sequence) and pre-coding matrix W2is applied to T2(the second training sequence). Pre-coding matrix W1is also applied to HR1X1of the mixed signal XRand W2is applied to HR2X2of the mixed signal XR. Note that HR1X1is the desired signal that the RN received from Node1(Node1sent X1). Also note that HR2X2is the desired signal that the RN received from Node2(Node2sent X2). In FIG. 4b, each node sends out (transmits, communicates) its own training sequence and the RN also sends out (transmits, communicates) pre-coding matrices W1and W2in addition to the mixed data XR. No pre-coding matrix is applied to the training sequence TRsent out (transmitted, communicated) by the RN.

[0066]

Referring again to FIG. 5, which is collectively simplified exemplary frame structures for the Network-Coded Amplify-and-Forward relaying scheme with beamforming at source nodes of the present invention. FIG. 5a shows the case where training sequences are sent from the source nodes. The RN sends out training sequences but the training sequences sent by the RN are effectively the training sequences that the RN received from Node1and Node2copied and returned to the source nodes (Node1and Node2). In the third stage the RN transmits the two training sequences and the mixed data XRto Nodei. Pre-coding matrices are applied to both the training sequences and to the mixed data XR. Pre-coding matrix W1is applied to T1(the first training sequence) and pre-coding matrix W2is applied to T2(the second training sequence). Pre-coding matrix W1is also applied to HR1X1of the mixed signal XRand W2 is applied to HR2X2of the mixed signal XR. Note that HR1X1is the desired signal that the RN received from Node1(Node1sent X1). Also note that HR2X2is the desired signal that the RN received from Node2(Node2sent X2). In addition to applying the pre-coding matrices to the training sequences and the mixed data, beamforming matrix Q1is applied to training sequence T1and beamforming matrix Q2is applied to training sequence T2. Beamforming matrix Q1is also applied to X1of the mixed signal XRand beamforming matrix Q2is applied to X2of mixed signal XR. In FIG. 5b, each node sends out (transmits, communicates) its own training sequence and the RN also sends out (transmits, communicates) pre-coding matrices W1and W2in addition to the mixed signal XR. No pre-coding matrix is applied to the training sequence TR sent out (transmitted, communicated) by the RN. Pre-coding matrices are applied to the mixed signal XR. Pre-coding matrix W1is also applied to HR1X1of the mixed signal XRand W2 is applied to HR2X2of the mixed signal XR. Note that HR1X1is the desired signal that the RN received from Node1(Node1sent X1). Also note that HR2X2is the desired signal that the RN received from Node2(Node2sent X2). In addition to applying the pre-coding matrices to mixed signal, beamforming matrix Q1is also applied to X1of the mixed signal XRand beamforming matrix Q2is applied to X2of mixed signal XR.

[0067]

Referring to FIG. 6, which is a flowchart of an exemplary embodiment of the present invention from the perspective of a node (source and destination), at 605 the node transmits a first signal (message) including data. At 610, the node receives a second signal (message) including data. At 615, the node jointly decodes the second signal (message) which was a combined signal (message) including both the first data transmitted by the node and third data transmitted by another node (destination node for the first data and source node for the third data) by removing (subtracting out) the first data and the training sequence since both the training sequence and the first data are known as well as the pre-coding matrix that was applied to the first data.

[0068]

Referring to FIG. 7, which is a flowchart of an exemplary embodiment of the present invention from the perspective of a relay node, at 705 the relay node receives a first signal (message) in a first time slot of a first channel. The first signal includes first data and a first training sequence. At 710 the relay node receives a second signal (message) in a second time slot of a second channel. The second signal includes second data and a second training sequence. At 715 the relay node determines a first pre-coding matrix to maximize the joint capacity of the channels. At 720 the relay node determines a second pre-coding matrix to maximize the joint capacity of the channels. At 725 the relay node applies the first pre-coding matrix to first data. At 730 the relay node applies the second pre-coding matrix to second data. At 735 the relay node generates a third signal by mixing (combining) the pre-coded first data and the pre-coded second data. At 740 the relay node transmits (multicasts, broadcasts, communicates, sends out) the third data over (on) both the first and the second channels.

[0069]

It is to be understood that the present invention may be implemented in various forms of hardware, software, firmware, special purpose processors, or a combination thereof. Preferably, the present invention is implemented as a combination of hardware and software. Moreover, the software is preferably implemented as an application program tangibly embodied on a program storage device. The application program may be uploaded to, and executed by, a machine comprising any suitable architecture. Preferably, the machine is implemented on a computer platform having hardware such as one or more central processing units (CPU), a random access memory (RAM), and input/output (I/O) interface(s). The computer platform also includes an operating system and microinstruction code. The various processes and functions described herein may either be part of the microinstruction code or part of the application program (or a combination thereof), which is executed via the operating system. In addition, various other peripheral devices may be connected to the computer platform such as an additional data storage device and a printing device.

[0070]

It is to be further understood that, because some of the constituent system components and method steps depicted in the accompanying figures are preferably implemented in software, the actual connections between the system components (or the process steps) may differ depending upon the manner in which the present invention is programmed. Given the teachings herein, one of ordinary skill in the related art will be able to contemplate these and similar implementations or configurations of the present invention.



A method and apparatus are described including receiving a first signal including first data in a first time slot of a first channel, receiving a second signal including second data in a second time slot of a second channel, determining a first pre-coding matrix, determining a second pre-coding matrix, applying the first pre-coding matrix to the first data to produce pre-coded first data, applying the second pre-coding matrix to the second data to produce pre-coded second data, generating a third signal by combining the pre-coded first data and the pre-coded second data and transmitting the third signal on the first channel and on the second channel. Also described are a method and apparatus including transmitting a first signal, receiving a second signal including a first training sequence and decoding the second signal by removing the first training sequence and removing the first signal.



1-24. (canceled)

25. A method, said method comprising:

transmitting a first signal, wherein said first signal includes first data;

receiving a second signal, wherein said second signal includes pre-coded data generated in a relay node by applying a first pre-coding matrix to said first data to maximize a joint channel capacity of a first channel and applying a second pre-coding matrix to second data to maximize a joint channel capacity of a second channel, said first pre-coding matrix and said second pre-coding matrix having been determined by the relay node; and

decoding said second signal by removing said first signal.

26-29. (canceled)

30. The method according to claim 25, further comprising a first result generated by said first pre-coding matrix times a first estimated channel matrix and a second result generated by said second pre-coding matrix times a second estimated channel matrix, said first result and said second result included between a first training sequence and data of said second signal.

31. The method according to claim 25, wherein a first beamforming matrix was applied to said first pre-coding matrix and said first data and a second beamforming matrix was applied to said second pre-coding matrix and said second data.

32. An apparatus comprising:

a transmitter, said transmitter transmitting a first signal, wherein said first signal includes first data;

a receiver, said receiver receiving a second signal, wherein said second signal includes pre-coded data generated in a relay node by applying a first pre-coding matrix to said first data to maximize a joint channel capacity of a first channel and applying a second pre-coding matrix to second data to maximize a joint channel capacity of a second channel, said first pre-coding matrix and said second pre-coding matrix having been determined by the relay node; and

a processor, said processor decoding said second signal by removing said first signal.

33-37. (canceled)

38. The apparatus according to claim 32, wherein a first beamforming matrix was applied to said first pre-coding matrix and said first data and a second beamforming matrix was applied to said second pre-coding matrix and said second data.

39. A relay node comprising:

a receiver, said receiver receiving a first signal including first data in a first time slot of a first channel;

said receiver, receiving a second signal including second data in a second time slot of second channel, wherein said first signal and said second signal are exchanged between a source node and a destination node communicating with each other via said relay node;

a processor, said processor determining a first pre-coding matrix to maximize a joint channel capacity of the first channel, said processor in communication with said receiver;

said processor, determining a second pre-coding matrix to maximize a joint channel capacity of the second channel;

said processor, applying said first pre-coding matrix to said first data to produce pre-coded first data, wherein said applying is accomplished by matrix multiplication;

said processor, applying said second pre-coding matrix to said second data to produce second pre-coded data, wherein said applying is accomplished by matrix multiplication;

said processor, generating a third signal by combining said pre-coded first data and said pre-coded second data, wherein said combining is accomplished by matrix addition; and

a transmitter, said transmitter multicasting said third signal on said first channel and on said second channel, wherein said relay node is in a bi-directional communications system, said transmitter is in communication with said processor.

40. The relay node according to claim 39, wherein said third signal further comprises a training sequence prepended to said third signal.

41. The relay node according to claim 40, wherein said processor further generates a first estimated channel matrix for said first channel and a second estimated channel matrix for said second channel.

42. The relay node according to claim 41, wherein said processor further inserts said first pre-coding matrix times said first estimated channel matrix and said second pre-coding matrix times said second estimated channel matrix between said training sequence of said third signal.

43. The relay node according to claim 42, wherein said processor further quantizes said first pre-coding matrix times said first estimated channel matrix and quantizes said second pre-coding matrix times said second estimated channel matrix before performing said inserting.

44. The relay node according to claim 42, wherein said training sequence includes a first training sequence and a second training sequence, said first training sequence is for said first channel and said second training sequence is for said second channel.

45. The relay node according to claim 39, wherein said first signal includes a training sequence and data.

46. The relay node according to claim 39, wherein said second signal includes a training sequence and data.

47. The relay node according to claim 41, further comprising:

said processor, determining a first beamforming matrix;

said processor, determining a second beamforming matrix; and

said processor, applying said first beamforming matrix to said first data and applying said second beamforming matrix to said second data before generating said third signal.

48. The relay node according to claim 47, further comprising said processor applying said first beamforming matrix to said first pre-coded matrix times said first estimated channel matrix and applying said second beamforming matrix to said second pre-coded matrix times said second estimated channel matrix before inserting said first pre-coded matrix times said first estimated channel matrix and said second pre-coded matrix times said second estimated channel matrix between said training sequence of said third signal.

49. The relay node according to claim 39, wherein said first channel and said second channel are orthogonal.

50. The relay node according to claim 39, wherein said second time slot is a reverse direction granted by a node which used said first time slot.