張勝南 王 斌,2 石永嵩 王文鼐
1(南京郵電大學通信與信息工程學院 江蘇 南京 210003)2(南京郵電大學寬帶無線通信與傳感網(wǎng)技術(shù)教育部重點實驗室 江蘇 南京 210003)
D2D通信作為5G的關(guān)鍵技術(shù)之一,由于其低功耗、低時延、高頻譜利用率等優(yōu)點得到了廣泛運用[1]。位置上彼此靠近的兩個用戶通過建立D2D直接通信鏈路,降低了基站BS的負載,減少了信號傳輸時延。此外,D2D用戶復用蜂窩用戶的頻譜資源,提高了蜂窩通信系統(tǒng)的頻譜利用率。位于小區(qū)邊緣或者信道條件較差的兩個用戶建立D2D通信鏈路可以提高蜂窩通信系統(tǒng)的吞吐量,擴大蜂窩通信系統(tǒng)的覆蓋范圍。當兩個要通信的用戶距離較遠不能建立D2D通信鏈路同時又由于與基站BS距離較遠不能建立正常的通信鏈路時,需要通過加入中繼,使得D2D用戶能夠正常通信。
目前有許多針對D2D用戶復用蜂窩用戶頻譜資源的研究大部分是建立在D2D用戶能夠建立直接通信鏈路的基礎(chǔ)之上的。然而在實際場景中,D2D用戶之間的距離是隨機分布的,有時并不能達成直接通信。因此需要采用合適的傳輸方案使不能建立直接通信的D2D用戶接入網(wǎng)絡(luò),進一步提高蜂窩系統(tǒng)的容量。文獻[2]提出了一種加權(quán)二分匹配頻譜資源分配算法,在滿足蜂窩用戶CUE和D2D用戶QoS的前提下最大化系統(tǒng)的總速率,但該方案沒有考慮D2D用戶距離較遠的情況。文獻[3]研究了降低移動流量負載的多播D2D通信,考慮用戶的社交屬性及業(yè)務(wù)類型,提出了一種基于CRP(Cinese Restaurant Process)的D2D組播簇頭選擇方案,提高了系統(tǒng)的吞吐量并且降低了設(shè)備能耗和傳輸時延,但邊緣用戶可能由于加入不到分組中導致通信鏈路建立失敗。文獻[4-5]采用資源分配和功率控制相結(jié)合的方案,降低了D2D用戶和蜂窩用戶CUE之間的同頻干擾,實現(xiàn)了系統(tǒng)總吞吐量的最大化,但是上述方案D2D用戶復用距離較遠的蜂窩用戶的頻譜資源(為了降低干擾)的措施,使得處在蜂窩邊緣的D2D對可能會對相鄰小區(qū)用戶造成干擾。
考慮到邊緣蜂窩用戶由于距離較遠不能建立直接通信或者信道條件較差不能與基站建立通信鏈路的情況,文獻[6]比較了D2D鏈路以直接或中繼模式工作時的吞吐量,利用最大系統(tǒng)總速率準則,來確定D2D用戶采用哪種通信模式,但這種方案需要專門的中繼用戶來轉(zhuǎn)發(fā)D2D用戶的數(shù)據(jù)。文獻[7-8]采用資源塊分配和功率控制相結(jié)合的方法降低中繼用戶和D2D用戶與蜂窩用戶CUE的干擾,提高了網(wǎng)絡(luò)的吞吐量,中繼用戶解碼D2D發(fā)送端發(fā)來的信號并轉(zhuǎn)發(fā)給D2D接收端,這種方法犧牲了中繼用戶與基站BS的通信。文獻[9-10]分別介紹了上行鏈路和下行鏈路D2D用戶與位于小區(qū)邊緣的蜂窩用戶CUE進行協(xié)作傳輸?shù)膱鼍?,D2D發(fā)送端通過解碼轉(zhuǎn)發(fā)邊緣蜂窩用戶CUE的信號,提高了系統(tǒng)的吞吐量,擴大了小區(qū)覆蓋范圍,但未考慮D2D信道條件較差的情況。
本文的主要工作如下:
1) 提出一種新型的D2D用戶與蜂窩用戶CUE協(xié)作傳輸?shù)腃RNG傳輸方案,其主要特點是:(1) 小區(qū)邊緣不能建立直接通信鏈路的D2D用戶通過蜂窩用戶中繼達成D2D通信。D2D發(fā)送端復用鄰近的蜂窩用戶的頻譜資源向中繼蜂窩用戶發(fā)送D2D信號,鄰近的蜂窩用戶通過連續(xù)干擾消除(SIC)去除D2D用戶的同頻干擾。充當中繼的蜂窩用戶CUE向基站和D2D接收端發(fā)送NOMA疊加信號,實現(xiàn)D2D用戶的正常通信。(2) 在保證所述的鄰近蜂窩用戶和中繼蜂窩用戶正常通信的基礎(chǔ)上,提高了D2D用戶的接入率。另外,D2D用戶在兩階段的通信中非正交地共享蜂窩用戶的無線資源,提高了系統(tǒng)吞吐量。
2) 對CRNG傳輸方案的性能進行了仿真驗證,仿真結(jié)果表明,CRNG傳輸方案在保證中繼蜂窩用戶的通信質(zhì)量基礎(chǔ)上增加了D2D對的吞吐量,提升了D2D用戶的數(shù)據(jù)速率以及D2D對的接入率,改善了蜂窩系統(tǒng)的服務(wù)性能。
如圖1所示,考慮一個單蜂窩小區(qū)上行鏈路通信的場景,小區(qū)中包含一個基站BS和若干蜂窩用和D2D用戶。蜂窩用戶CUE和D2D用戶均勻地分布在小區(qū)中,蜂窩用戶CUE用集合{1,2,…,i,…,N}表示,D2D對用{1,2,…,j,…,M}表示,假設(shè)N>M;資源塊數(shù)目為K,用集合{1,2,…,k,…,K}表示,K個資源塊相互正交;系統(tǒng)處于滿載狀態(tài),即K=N。D2D對能夠建立通信的距離是(0,50]區(qū)間上的一個隨機數(shù)值;假設(shè)D2D對復用蜂窩用戶CUE的頻譜資源并進行上行鏈路數(shù)據(jù)傳輸,且一個蜂窩資源只能被一個D2D對復用,一個D2D對只能占用一個蜂窩用戶的頻譜資源。
圖1 蜂窩網(wǎng)絡(luò)覆蓋下的D2D通信模型
根據(jù)D2D對是否能夠建立直接通信鏈路,將D2D對分為兩類:一類是能夠直接建立通信鏈路的D2D對,如圖1中的D2D_2和D2D_3;另一類是需要中繼輔助的D2D對,如圖1中的D2D_1。同樣,蜂窩用戶也分為兩類:一類是普通蜂窩用戶,如圖1中的CUE3和CUE4;另一類是輔助蜂窩用戶,如圖1中的CUE1和CUE2。
普通蜂窩用戶i在資源塊k上的信干噪比SINR可以表示為:
對于D2D發(fā)射機與接收機距離較近的用戶而言,它們能夠建立直接鏈路進行信息傳輸。D2D用戶對在資源塊k上的信干噪比SINR表示為:
式中:gj為D2D用戶對之間的信道增益;gi,j為蜂窩用戶i到D2D接收機間的信道增益。
根據(jù)香農(nóng)公式,蜂窩用戶i和D2D對j在資源塊k上傳輸數(shù)據(jù)的瞬時速率分別為:
(1)
(2)
當D2D用戶對的距離超出能夠直接通信的范圍,且又由于處在小區(qū)邊緣導致信道條件較差而不能采用蜂窩模式達成通信時,使用蜂窩用戶充當D2D中繼的方法可以完成D2D對之間的數(shù)據(jù)傳輸。如圖1所示,發(fā)射機D2D_1T和接收機D2D_1R的距離超出了可以直接建立通信鏈路的距離閾值,蜂窩用戶CUE2充當中繼將D2D_1T發(fā)來的消息轉(zhuǎn)發(fā)給D2D_1R,保證了D2D用戶對之間的正常通信。下面以圖1中的四個用戶來簡要說明通信過程:
在奇數(shù)時隙,D2D_1T和相鄰蜂窩用戶CUE1復用相同的頻譜資源發(fā)送數(shù)據(jù)。為了降低彼此之間共道干擾,傳統(tǒng)方案中的D2D對在尋找配對的蜂窩用戶時一般選擇本小區(qū)中距離較遠的蜂窩用戶,但是這并不能減少對相鄰小區(qū)蜂窩用戶造成的干擾。為了在接收端進行連續(xù)干擾消除,CUE1以高功率向基站發(fā)送信號S1,D2D_1T以低功率向中繼CUE2發(fā)送信號SD。
在奇數(shù)時隙,基站BS收到的信號表示為:
yB1=hCN,BxCN+hd,BxD+n1
式中:hCN,B為蜂窩用戶CUE1和基站間信道系數(shù);hd,B為發(fā)射機D2D_1T和基站間信道系數(shù);xCN和xD分別為CUE1、D2D_1T的發(fā)送信號;n1為信道噪聲。
在奇數(shù)時隙,中繼蜂窩用戶CUE2收到的信號表示為:
yR=hCN,RxCN+hd,RxD+n2
式中:hCN,R為蜂窩用戶CUE1和中繼蜂窩用戶CUE2間信道系數(shù);hd,R為D2D_1T和中繼蜂窩用戶CUE2間信道系數(shù);n2為信道噪聲。
在奇數(shù)時隙,基站BS同時收到CUE1的高功率信號和D2D_1T發(fā)送的低功率信號,基站BS把D2D_1T發(fā)送的信號當作干擾,解出蜂窩用戶CUE1的信號。蜂窩用戶CUE1的信干噪比SINR表示為:
式中:PCN為蜂窩用戶CUE1的發(fā)射功率,Pd為D2D_1T的發(fā)射功率,且PCN>Pd。
在奇數(shù)時隙,中繼蜂窩用戶CUE2收到CUE1的高功率信號和D2D_1T發(fā)送的低功率信號(D2D_1T和CUE1相鄰)。首先把D2D_1T的低功率信號當作干擾解出CUE1的信號,之后通過SIC解出所需要的D2D_1T信號。CUE2處接收到D2D_1T信號的信干噪比表示為:
在偶數(shù)時隙,D2D_1T不發(fā)送信息,因此不會對共用同一資源塊的蜂窩用戶CUE1造成干擾,蜂窩用戶CUE1在偶數(shù)時隙通信的信干噪比SINR表示為:
在偶數(shù)時隙,中繼蜂窩用戶CUE2向基站BS和D2D_1R發(fā)送NOMA疊加信號,基站BS處和D2D_1R處收到的信號分別為:
式中:hCR,B為中繼蜂窩用戶和基站間的信道系數(shù);hCR,d為中繼蜂窩用戶和D2D接收端的信道系數(shù);xCR和xD分別為中繼蜂窩用戶和D2D用戶的信號;α為功率分配因子,α>(1-α);n3和n4是信道噪聲。
基站收到NOMA疊加信號后把低功率D2D信號當作干擾,解出中繼蜂窩用戶CUE2的信號,成功解碼CUE2用戶信號的信干噪比SINR為:
D2D_1R收到NOMA疊加信號后先把低功率D2D信號當作干擾,解出中繼蜂窩用戶CUE2的信號,之后利用連續(xù)干擾消除,最終解碼得到D2D用戶所需的信號。D2D_1R接收到信號的信干噪比SINR為:
在整個奇偶時隙通信過程中,蜂窩用戶CUE1的吞吐量表示為:
RCN=log2(1+γCN,1)+log2(1+γCN,2)
(3)
中繼蜂窩用戶CUE2可實現(xiàn)的吞吐量表示為:
RCR=log2(1+γCR)
(4)
用戶D2D_1通過中繼輔助實現(xiàn)的信息速率可以表示為:
RDR=min{log2(1+γDT),log2(1+γDR)}
(5)
為了便于分析,將圖1中的CUE1、CUE2、D2D_1T和D2D_1R定義為一個協(xié)作中繼NOMA組(CRNG),根據(jù)式(3)-式(5)可知,第l個CRNG中的總數(shù)據(jù)速率可以表示為:
(6)
根據(jù)式(1)、式(2)、式(6),蜂窩通信系統(tǒng)可實現(xiàn)的總的吞吐量可以表示為:
(7)
對于能夠直接建立通信鏈路的D2D對用戶,需要為他們分配合適的資源塊,以減少蜂窩用戶和D2D用戶由于使用相同頻譜資源帶來的同頻干擾,盡可能地提升系統(tǒng)容量。對于不能夠直接建立通信鏈路的D2D對,尋找合適的蜂窩用戶中繼D2D信號,提高D2D對的接入率,選擇鄰近的蜂窩用戶共用頻譜資源,減少對相鄰小區(qū)的潛在干擾。
本文在保證中繼蜂窩用戶通信質(zhì)量的基礎(chǔ)上,解決了邊緣D2D用戶由于距離過大通信建立失敗的問題。本文提出的傳輸方案以最大化系統(tǒng)吞吐量為目標,問題的數(shù)學模型如下:
(8)
(9)
(10)
γCN,l≥γCN,min?l∈L
(11)
γCR,l≥γCR,min?l∈L
(12)
γDT,l≥γDT,min?l∈L
(13)
γDR,l≥γDR,min?l∈L
(14)
(15)
(16)
(17)
(18)
(19)
(20)
(21)
α∈(0.5,1)
(22)
式(9)-式(10)保證了共用同一資源塊蜂窩用戶和D2D的QoS;式(11)-式(14)表示在一個CRNG組中的四個用戶要滿足最低的SINR閾值要求;式(15)表示一個蜂窩用戶的頻譜資源最多被一對D2D用戶使用;式(16)表示一個D2D對只能復用一個蜂窩用戶的頻譜資源;式(17)-式(18)表示為共用相同資源塊的蜂窩用戶和D2D對的發(fā)射功率約束;式(19)-式(21)為一個CRNG組中用戶的發(fā)射功率不能超過其最大發(fā)射功率。
CRNG傳輸方案具體分為CRNG組的構(gòu)建、用戶的功率控制、為D2D對和蜂窩用戶分配資源塊三個部分。
D2D對和蜂窩用戶CUE均勻地分布在小區(qū)中,并且基站BS能夠獲得他們的位置信息。每個D2D對之間的距離d是(0,50]之間的隨機數(shù)值,本文定義dmax=30 m。當d≤dmax時,D2D對可以建立直接通信鏈路;當d>dmax時,D2D對不能直接建立通信鏈路,需要為這樣的D2D對尋找中繼蜂窩用戶以及共用頻譜資源塊的蜂窩用戶。
如圖2所示,接收機D2D_R不在發(fā)射機D2D_T的發(fā)射覆蓋范圍內(nèi),即D2D_T和D2D_R不能建立直接通信鏈路,需要尋找蜂窩用戶CUE充當信息中繼完成D2D用戶的數(shù)據(jù)傳輸。在D2D_T和D2D_R覆蓋區(qū)域的重疊區(qū)域存在若干蜂窩用戶,可以從重疊陰影區(qū)域選擇一個蜂窩用戶充當D2D用戶的中繼。
圖2 CRNG分組構(gòu)建示意圖
為了降低傳輸損耗和傳輸時延,本文按照距離最短原則選擇中繼蜂窩用戶,即min{d1+d2},顯然,CUE2到D2D_T和D2D_R的距離之和最近,是最佳的中繼用戶。
接下來為D2D_T尋找共用頻譜資源塊的蜂窩用戶。按上文所述,為了降低對相鄰小區(qū)用戶帶來的潛在共道干擾,選擇鄰近的蜂窩用戶共用資源塊,復用相同頻譜的兩個用戶在發(fā)送端分別以高低功率發(fā)送信號,在接收端使用SIC解決短距離共享頻譜帶來的干擾問題。
在D2D_T的信號覆蓋區(qū)域選擇一個較近的蜂窩用戶使用同一資源塊,如圖2所示,CUE4、CUE5、CUE6均在覆蓋范圍內(nèi),本文選擇CUE6作為D2D_T資源復用候選用戶。因此,CUE6、CUE2、D2D_T和D2D_R就組成了一個CRNG分組。
在CRNG分組完成之后,需要為系統(tǒng)中的D2D用戶和蜂窩用戶分配合適的資源塊k,以最大限度地降低用戶之間的干擾,提高系統(tǒng)吞吐量。
首先基于比例公平PF算法為蜂窩系統(tǒng)中的所有蜂窩用戶CUE分配資源塊。蜂窩用戶i在資源塊k上的調(diào)度權(quán)重值[11]為:
基于PF算法為蜂窩用戶分配頻譜資源保證了每個蜂窩用戶都有被調(diào)度的機會,不會出現(xiàn)由于信道條件過差從而得不到調(diào)度情況的出現(xiàn)。λi,k越大,權(quán)重值越高,用戶i分配到資源塊k的優(yōu)先級越大。
在為蜂窩用戶CUE分配好資源之后,接下來為系統(tǒng)中的D2D用戶分配資源,由于在CRNG分組構(gòu)建過程中已經(jīng)完成了蜂窩用戶和D2D對的配對,也相應(yīng)地確定了CRNG分組中D2D對復用頻譜的蜂窩用戶,接下來我們只需要為能夠建立直接通信鏈路的D2D分配資源塊即可。
為了保證蜂窩用戶的通信質(zhì)量,在為蜂窩用戶CUE選擇候選的資源復用D2D用戶時,選擇對蜂窩用戶造成干擾最小的D2D用戶作為復用對象,在提高系統(tǒng)吞吐量的同時盡可能地保護蜂窩用戶的通信質(zhì)量。CRNG資源分配方案具體算法步驟如下:
(1) 根據(jù)D2D對之間的距離將D2D對分成兩組,一組是能夠建立直接通信鏈路的D2D對集合A,另一組是通過中繼建立的D2D對集合B。
(2) 按照最小距離和分組構(gòu)建原則,即min{d1+d2},為集合B中的每個D2D對構(gòu)建CRNG分組。
(3) 建立權(quán)重表Tk,如表1所示,其中:行對應(yīng)蜂窩用戶,列對應(yīng)資源塊編號,每一個單元描述相應(yīng)的蜂窩用戶在資源塊k上的公平權(quán)重λn,k。
表1 蜂窩用戶CUE在RB上的權(quán)重值
(4) 在權(quán)重表Tk中的所有權(quán)重值λn,k中選擇最大的權(quán)重λ,并將λ對應(yīng)的資源塊分給相對應(yīng)的蜂窩用戶,然后在該權(quán)重表Tk中刪除該權(quán)重λ所在的行和列。重復此步驟直到所有的蜂窩用戶都被分配到資源塊。
(5) 為需要中繼輔助的D2D對(集合B的D2D對)分配資源塊。由于在CRNG分組構(gòu)建過程中已經(jīng)完成了蜂窩用戶和D2D對的配對,也相應(yīng)地確定了CRNG分組中D2D對復用哪個蜂窩用戶的頻譜,即循環(huán)遍歷每一個CRNG分組,將分組中蜂窩用戶使用的資源塊分配給配對的D2D對使用。
(6) 為能夠建立直接通信鏈路的D2D對(集合A的D2D對)分配資源塊。建立權(quán)重表Mk如表2所示,其中:行對應(yīng)CRNG分組以外蜂窩用戶,列對應(yīng)集合A中的D2D對,每一個單元描述為D2D對復用該蜂窩用戶資源的干擾權(quán)重γm,n。
表2 D2D用戶在CUE上的干擾權(quán)重值
(7) 在權(quán)重表Mk中,選擇最大的權(quán)重γ,并將γ對應(yīng)的蜂窩用戶的資源塊分配給D2D對使用,然后在該權(quán)重表Mk中刪除該權(quán)重γ對應(yīng)的行和列。重復步驟(7)直到集合A中所有的D2D對都分配到資源塊。
在為系統(tǒng)中的每個用戶分配資源塊之后,需要為每個用戶進行合理的功率控制,即在保證每個用戶通信質(zhì)量的基礎(chǔ)上盡可能地提高發(fā)射功率,以使得系統(tǒng)的總吞吐量最大。
前面的資源分配是以保護蜂窩用戶的通信質(zhì)量為基礎(chǔ)的,因此在這里假設(shè)所有的蜂窩用戶均以最大功率發(fā)送信號,此時蜂窩用戶的QoS是最好的,蜂窩用戶的總速率也是最大的。其次,對于D2D用戶,其發(fā)送功率應(yīng)該至少能保證最小的SINR需求以確保盡可能多的D2D用戶接入網(wǎng)絡(luò),之后再提高D2D用戶的發(fā)射功率,進而提高D2D用戶的吞吐量,使得式(8)的系統(tǒng)總速率最大。
仿真考慮單蜂窩小區(qū)場景,蜂窩用戶和D2D對均勻的分布在小區(qū)中,D2D對發(fā)射機和接收機的距離是在(0,50]之間的一個隨機數(shù)值。本文仿真使用的主要參數(shù)如表3所示。仿真是基于Eclipse集成的C++開發(fā)平臺,仿真時間為10 000 TTI。
表3 仿真參數(shù)
為了評估CRNG傳輸方案的性能,本文將從蜂窩用戶吞吐量、D2D用戶吞吐量及D2D用戶接入率三個方面與不采用CRNG傳輸方案進行比較分析。
圖3為采用CRNG傳輸方案和不采用CRNG傳輸方案蜂窩用戶數(shù)據(jù)速率的對比??梢钥闯?,兩種方案的蜂窩用戶速率都隨著D2D用戶數(shù)增加呈下降趨勢,這是由于隨著D2D用戶數(shù)增加,成功接入網(wǎng)絡(luò)的D2D對數(shù)也增加,對蜂窩用戶的干擾越來越嚴重。另外,由圖3可見CRNG方案實現(xiàn)的蜂窩用戶速率略低一些,這是由于在CRNG方案中充當中繼的蜂窩用戶犧牲奇數(shù)時隙的通信用來接收D2D發(fā)送端發(fā)來的信息造成的。
圖3 蜂窩用戶速率
圖4為兩種方案D2D用戶數(shù)據(jù)速率的對比??梢钥闯?,隨著D2D對數(shù)增加兩種方案的D2D用戶速率都呈現(xiàn)增加的趨勢,這是由于隨著D2D用戶數(shù)增加,成功接入系統(tǒng)的D2D對數(shù)相應(yīng)增加,使得吞吐量持續(xù)增加。另外采用CRNG傳輸方案的D2D對吞吐量明顯高于傳統(tǒng)方案的D2D對吞吐量,這是因為CRNG傳輸方案使用蜂窩用戶充當D2D對中繼,解決了部分D2D對由于距離原因不能接入系統(tǒng)的問題。
圖4 D2D用戶速率
圖5為兩種方案D2D對接入率的對比??梢钥闯?,隨著D2D對數(shù)增加采用CRNG傳輸方案的D2D對接入率下降趨勢不明顯,相比之下,不采用CRNG傳輸方案的D2D對接入率下降趨勢比較明顯。這是因為隨著D2D數(shù)的增加,越來越多的D2D對由于距離原因不能建立直接通信鏈路,得不到服務(wù)的機會,而采用CRNG傳輸方案使得盡可能多的D2D用戶接入網(wǎng)絡(luò),提高了D2D用戶被服務(wù)的比率。
圖5 D2D用戶接入率
文獻[6]以最大化總和速率為目標來確定D2D用戶選擇直接還是中繼通信模式,實質(zhì)是犧牲蜂窩用戶的吞吐量來提高D2D用戶的吞吐量,這是因為D2D采用中繼模式通信時蜂窩用戶作為D2D用戶的中繼無法與基站通信。與本文方法相比,文獻[6]可以實現(xiàn)更高的D2D通信速率,本文考慮了中繼用戶與基站信息傳輸?shù)那闆r,因此蜂窩用戶的吞吐量比文獻[6]要高。文獻[7-8]使用專門的蜂窩用戶作為D2D對的信息解碼轉(zhuǎn)發(fā)中繼,系統(tǒng)中的中繼數(shù)量越多,蜂窩用戶的平均吞吐量也就越低,本文方法兼顧了中繼用戶與基站的通信,相較于文獻[7-8]可以更好地保證系統(tǒng)中蜂窩用戶的吞吐量。
在蜂窩網(wǎng)絡(luò)覆蓋下的D2D通信中,D2D對的距離并不是一個固定的數(shù)值,當D2D用戶超出可建立直接通信鏈路距離的范圍后,D2D用戶可能得不到被服務(wù)的機會。本文提出CRNG傳輸方案,在保證中繼蜂窩用戶的正常通信的基礎(chǔ)上,提高D2D用戶的接入率。仿真分析表明,CRNG傳輸方案在保證蜂窩用戶通信質(zhì)量的同時提高了系統(tǒng)中D2D對的吞吐量,增加了D2D用戶的接入比率,改善了蜂窩系統(tǒng)服務(wù)性能。