张胜南 王 斌,2 石永嵩 王文鼐
1(南京邮电大学通信与信息工程学院 江苏 南京 210003)2(南京邮电大学宽带无线通信与传感网技术教育部重点实验室 江苏 南京 210003)
D2D通信作为5G的关键技术之一,由于其低功耗、低时延、高频谱利用率等优点得到了广泛运用[1]。位置上彼此靠近的两个用户通过建立D2D直接通信链路,降低了基站BS的负载,减少了信号传输时延。此外,D2D用户复用蜂窝用户的频谱资源,提高了蜂窝通信系统的频谱利用率。位于小区边缘或者信道条件较差的两个用户建立D2D通信链路可以提高蜂窝通信系统的吞吐量,扩大蜂窝通信系统的覆盖范围。当两个要通信的用户距离较远不能建立D2D通信链路同时又由于与基站BS距离较远不能建立正常的通信链路时,需要通过加入中继,使得D2D用户能够正常通信。
目前有许多针对D2D用户复用蜂窝用户频谱资源的研究大部分是建立在D2D用户能够建立直接通信链路的基础之上的。然而在实际场景中,D2D用户之间的距离是随机分布的,有时并不能达成直接通信。因此需要采用合适的传输方案使不能建立直接通信的D2D用户接入网络,进一步提高蜂窝系统的容量。文献[2]提出了一种加权二分匹配频谱资源分配算法,在满足蜂窝用户CUE和D2D用户QoS的前提下最大化系统的总速率,但该方案没有考虑D2D用户距离较远的情况。文献[3]研究了降低移动流量负载的多播D2D通信,考虑用户的社交属性及业务类型,提出了一种基于CRP(Cinese Restaurant Process)的D2D组播簇头选择方案,提高了系统的吞吐量并且降低了设备能耗和传输时延,但边缘用户可能由于加入不到分组中导致通信链路建立失败。文献[4-5]采用资源分配和功率控制相结合的方案,降低了D2D用户和蜂窝用户CUE之间的同频干扰,实现了系统总吞吐量的最大化,但是上述方案D2D用户复用距离较远的蜂窝用户的频谱资源(为了降低干扰)的措施,使得处在蜂窝边缘的D2D对可能会对相邻小区用户造成干扰。
考虑到边缘蜂窝用户由于距离较远不能建立直接通信或者信道条件较差不能与基站建立通信链路的情况,文献[6]比较了D2D链路以直接或中继模式工作时的吞吐量,利用最大系统总速率准则,来确定D2D用户采用哪种通信模式,但这种方案需要专门的中继用户来转发D2D用户的数据。文献[7-8]采用资源块分配和功率控制相结合的方法降低中继用户和D2D用户与蜂窝用户CUE的干扰,提高了网络的吞吐量,中继用户解码D2D发送端发来的信号并转发给D2D接收端,这种方法牺牲了中继用户与基站BS的通信。文献[9-10]分别介绍了上行链路和下行链路D2D用户与位于小区边缘的蜂窝用户CUE进行协作传输的场景,D2D发送端通过解码转发边缘蜂窝用户CUE的信号,提高了系统的吞吐量,扩大了小区覆盖范围,但未考虑D2D信道条件较差的情况。
本文的主要工作如下:
1) 提出一种新型的D2D用户与蜂窝用户CUE协作传输的CRNG传输方案,其主要特点是:(1) 小区边缘不能建立直接通信链路的D2D用户通过蜂窝用户中继达成D2D通信。D2D发送端复用邻近的蜂窝用户的频谱资源向中继蜂窝用户发送D2D信号,邻近的蜂窝用户通过连续干扰消除(SIC)去除D2D用户的同频干扰。充当中继的蜂窝用户CUE向基站和D2D接收端发送NOMA叠加信号,实现D2D用户的正常通信。(2) 在保证所述的邻近蜂窝用户和中继蜂窝用户正常通信的基础上,提高了D2D用户的接入率。另外,D2D用户在两阶段的通信中非正交地共享蜂窝用户的无线资源,提高了系统吞吐量。
2) 对CRNG传输方案的性能进行了仿真验证,仿真结果表明,CRNG传输方案在保证中继蜂窝用户的通信质量基础上增加了D2D对的吞吐量,提升了D2D用户的数据速率以及D2D对的接入率,改善了蜂窝系统的服务性能。
如图1所示,考虑一个单蜂窝小区上行链路通信的场景,小区中包含一个基站BS和若干蜂窝用和D2D用户。蜂窝用户CUE和D2D用户均匀地分布在小区中,蜂窝用户CUE用集合{1,2,…,i,…,N}表示,D2D对用{1,2,…,j,…,M}表示,假设N>M;资源块数目为K,用集合{1,2,…,k,…,K}表示,K个资源块相互正交;系统处于满载状态,即K=N。D2D对能够建立通信的距离是(0,50]区间上的一个随机数值;假设D2D对复用蜂窝用户CUE的频谱资源并进行上行链路数据传输,且一个蜂窝资源只能被一个D2D对复用,一个D2D对只能占用一个蜂窝用户的频谱资源。
图1 蜂窝网络覆盖下的D2D通信模型
根据D2D对是否能够建立直接通信链路,将D2D对分为两类:一类是能够直接建立通信链路的D2D对,如图1中的D2D_2和D2D_3;另一类是需要中继辅助的D2D对,如图1中的D2D_1。同样,蜂窝用户也分为两类:一类是普通蜂窝用户,如图1中的CUE3和CUE4;另一类是辅助蜂窝用户,如图1中的CUE1和CUE2。
普通蜂窝用户i在资源块k上的信干噪比SINR可以表示为:
对于D2D发射机与接收机距离较近的用户而言,它们能够建立直接链路进行信息传输。D2D用户对在资源块k上的信干噪比SINR表示为:
式中:gj为D2D用户对之间的信道增益;gi,j为蜂窝用户i到D2D接收机间的信道增益。
根据香农公式,蜂窝用户i和D2D对j在资源块k上传输数据的瞬时速率分别为:
(1)
(2)
当D2D用户对的距离超出能够直接通信的范围,且又由于处在小区边缘导致信道条件较差而不能采用蜂窝模式达成通信时,使用蜂窝用户充当D2D中继的方法可以完成D2D对之间的数据传输。如图1所示,发射机D2D_1T和接收机D2D_1R的距离超出了可以直接建立通信链路的距离阈值,蜂窝用户CUE2充当中继将D2D_1T发来的消息转发给D2D_1R,保证了D2D用户对之间的正常通信。下面以图1中的四个用户来简要说明通信过程:
在奇数时隙,D2D_1T和相邻蜂窝用户CUE1复用相同的频谱资源发送数据。为了降低彼此之间共道干扰,传统方案中的D2D对在寻找配对的蜂窝用户时一般选择本小区中距离较远的蜂窝用户,但是这并不能减少对相邻小区蜂窝用户造成的干扰。为了在接收端进行连续干扰消除,CUE1以高功率向基站发送信号S1,D2D_1T以低功率向中继CUE2发送信号SD。
在奇数时隙,基站BS收到的信号表示为:
yB1=hCN,BxCN+hd,BxD+n1
式中:hCN,B为蜂窝用户CUE1和基站间信道系数;hd,B为发射机D2D_1T和基站间信道系数;xCN和xD分别为CUE1、D2D_1T的发送信号;n1为信道噪声。
在奇数时隙,中继蜂窝用户CUE2收到的信号表示为:
yR=hCN,RxCN+hd,RxD+n2
式中:hCN,R为蜂窝用户CUE1和中继蜂窝用户CUE2间信道系数;hd,R为D2D_1T和中继蜂窝用户CUE2间信道系数;n2为信道噪声。
在奇数时隙,基站BS同时收到CUE1的高功率信号和D2D_1T发送的低功率信号,基站BS把D2D_1T发送的信号当作干扰,解出蜂窝用户CUE1的信号。蜂窝用户CUE1的信干噪比SINR表示为:
式中:PCN为蜂窝用户CUE1的发射功率,Pd为D2D_1T的发射功率,且PCN>Pd。
在奇数时隙,中继蜂窝用户CUE2收到CUE1的高功率信号和D2D_1T发送的低功率信号(D2D_1T和CUE1相邻)。首先把D2D_1T的低功率信号当作干扰解出CUE1的信号,之后通过SIC解出所需要的D2D_1T信号。CUE2处接收到D2D_1T信号的信干噪比表示为:
在偶数时隙,D2D_1T不发送信息,因此不会对共用同一资源块的蜂窝用户CUE1造成干扰,蜂窝用户CUE1在偶数时隙通信的信干噪比SINR表示为:
在偶数时隙,中继蜂窝用户CUE2向基站BS和D2D_1R发送NOMA叠加信号,基站BS处和D2D_1R处收到的信号分别为:
式中:hCR,B为中继蜂窝用户和基站间的信道系数;hCR,d为中继蜂窝用户和D2D接收端的信道系数;xCR和xD分别为中继蜂窝用户和D2D用户的信号;α为功率分配因子,α>(1-α);n3和n4是信道噪声。
基站收到NOMA叠加信号后把低功率D2D信号当作干扰,解出中继蜂窝用户CUE2的信号,成功解码CUE2用户信号的信干噪比SINR为:
D2D_1R收到NOMA叠加信号后先把低功率D2D信号当作干扰,解出中继蜂窝用户CUE2的信号,之后利用连续干扰消除,最终解码得到D2D用户所需的信号。D2D_1R接收到信号的信干噪比SINR为:
在整个奇偶时隙通信过程中,蜂窝用户CUE1的吞吐量表示为:
RCN=log2(1+γCN,1)+log2(1+γCN,2)
(3)
中继蜂窝用户CUE2可实现的吞吐量表示为:
RCR=log2(1+γCR)
(4)
用户D2D_1通过中继辅助实现的信息速率可以表示为:
RDR=min{log2(1+γDT),log2(1+γDR)}
(5)
为了便于分析,将图1中的CUE1、CUE2、D2D_1T和D2D_1R定义为一个协作中继NOMA组(CRNG),根据式(3)-式(5)可知,第l个CRNG中的总数据速率可以表示为:
(6)
根据式(1)、式(2)、式(6),蜂窝通信系统可实现的总的吞吐量可以表示为:
(7)
对于能够直接建立通信链路的D2D对用户,需要为他们分配合适的资源块,以减少蜂窝用户和D2D用户由于使用相同频谱资源带来的同频干扰,尽可能地提升系统容量。对于不能够直接建立通信链路的D2D对,寻找合适的蜂窝用户中继D2D信号,提高D2D对的接入率,选择邻近的蜂窝用户共用频谱资源,减少对相邻小区的潜在干扰。
本文在保证中继蜂窝用户通信质量的基础上,解决了边缘D2D用户由于距离过大通信建立失败的问题。本文提出的传输方案以最大化系统吞吐量为目标,问题的数学模型如下:
(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对的发射功率约束;式(19)-式(21)为一个CRNG组中用户的发射功率不能超过其最大发射功率。
CRNG传输方案具体分为CRNG组的构建、用户的功率控制、为D2D对和蜂窝用户分配资源块三个部分。
D2D对和蜂窝用户CUE均匀地分布在小区中,并且基站BS能够获得他们的位置信息。每个D2D对之间的距离d是(0,50]之间的随机数值,本文定义dmax=30 m。当d≤dmax时,D2D对可以建立直接通信链路;当d>dmax时,D2D对不能直接建立通信链路,需要为这样的D2D对寻找中继蜂窝用户以及共用频谱资源块的蜂窝用户。
如图2所示,接收机D2D_R不在发射机D2D_T的发射覆盖范围内,即D2D_T和D2D_R不能建立直接通信链路,需要寻找蜂窝用户CUE充当信息中继完成D2D用户的数据传输。在D2D_T和D2D_R覆盖区域的重叠区域存在若干蜂窝用户,可以从重叠阴影区域选择一个蜂窝用户充当D2D用户的中继。
图2 CRNG分组构建示意图
为了降低传输损耗和传输时延,本文按照距离最短原则选择中继蜂窝用户,即min{d1+d2},显然,CUE2到D2D_T和D2D_R的距离之和最近,是最佳的中继用户。
接下来为D2D_T寻找共用频谱资源块的蜂窝用户。按上文所述,为了降低对相邻小区用户带来的潜在共道干扰,选择邻近的蜂窝用户共用资源块,复用相同频谱的两个用户在发送端分别以高低功率发送信号,在接收端使用SIC解决短距离共享频谱带来的干扰问题。
在D2D_T的信号覆盖区域选择一个较近的蜂窝用户使用同一资源块,如图2所示,CUE4、CUE5、CUE6均在覆盖范围内,本文选择CUE6作为D2D_T资源复用候选用户。因此,CUE6、CUE2、D2D_T和D2D_R就组成了一个CRNG分组。
在CRNG分组完成之后,需要为系统中的D2D用户和蜂窝用户分配合适的资源块k,以最大限度地降低用户之间的干扰,提高系统吞吐量。
首先基于比例公平PF算法为蜂窝系统中的所有蜂窝用户CUE分配资源块。蜂窝用户i在资源块k上的调度权重值[11]为:
基于PF算法为蜂窝用户分配频谱资源保证了每个蜂窝用户都有被调度的机会,不会出现由于信道条件过差从而得不到调度情况的出现。λi,k越大,权重值越高,用户i分配到资源块k的优先级越大。
在为蜂窝用户CUE分配好资源之后,接下来为系统中的D2D用户分配资源,由于在CRNG分组构建过程中已经完成了蜂窝用户和D2D对的配对,也相应地确定了CRNG分组中D2D对复用频谱的蜂窝用户,接下来我们只需要为能够建立直接通信链路的D2D分配资源块即可。
为了保证蜂窝用户的通信质量,在为蜂窝用户CUE选择候选的资源复用D2D用户时,选择对蜂窝用户造成干扰最小的D2D用户作为复用对象,在提高系统吞吐量的同时尽可能地保护蜂窝用户的通信质量。CRNG资源分配方案具体算法步骤如下:
(1) 根据D2D对之间的距离将D2D对分成两组,一组是能够建立直接通信链路的D2D对集合A,另一组是通过中继建立的D2D对集合B。
(2) 按照最小距离和分组构建原则,即min{d1+d2},为集合B中的每个D2D对构建CRNG分组。
(3) 建立权重表Tk,如表1所示,其中:行对应蜂窝用户,列对应资源块编号,每一个单元描述相应的蜂窝用户在资源块k上的公平权重λn,k。
表1 蜂窝用户CUE在RB上的权重值
(4) 在权重表Tk中的所有权重值λn,k中选择最大的权重λ,并将λ对应的资源块分给相对应的蜂窝用户,然后在该权重表Tk中删除该权重λ所在的行和列。重复此步骤直到所有的蜂窝用户都被分配到资源块。
(5) 为需要中继辅助的D2D对(集合B的D2D对)分配资源块。由于在CRNG分组构建过程中已经完成了蜂窝用户和D2D对的配对,也相应地确定了CRNG分组中D2D对复用哪个蜂窝用户的频谱,即循环遍历每一个CRNG分组,将分组中蜂窝用户使用的资源块分配给配对的D2D对使用。
(6) 为能够建立直接通信链路的D2D对(集合A的D2D对)分配资源块。建立权重表Mk如表2所示,其中:行对应CRNG分组以外蜂窝用户,列对应集合A中的D2D对,每一个单元描述为D2D对复用该蜂窝用户资源的干扰权重γm,n。
表2 D2D用户在CUE上的干扰权重值
(7) 在权重表Mk中,选择最大的权重γ,并将γ对应的蜂窝用户的资源块分配给D2D对使用,然后在该权重表Mk中删除该权重γ对应的行和列。重复步骤(7)直到集合A中所有的D2D对都分配到资源块。
在为系统中的每个用户分配资源块之后,需要为每个用户进行合理的功率控制,即在保证每个用户通信质量的基础上尽可能地提高发射功率,以使得系统的总吞吐量最大。
前面的资源分配是以保护蜂窝用户的通信质量为基础的,因此在这里假设所有的蜂窝用户均以最大功率发送信号,此时蜂窝用户的QoS是最好的,蜂窝用户的总速率也是最大的。其次,对于D2D用户,其发送功率应该至少能保证最小的SINR需求以确保尽可能多的D2D用户接入网络,之后再提高D2D用户的发射功率,进而提高D2D用户的吞吐量,使得式(8)的系统总速率最大。
仿真考虑单蜂窝小区场景,蜂窝用户和D2D对均匀的分布在小区中,D2D对发射机和接收机的距离是在(0,50]之间的一个随机数值。本文仿真使用的主要参数如表3所示。仿真是基于Eclipse集成的C++开发平台,仿真时间为10 000 TTI。
表3 仿真参数
为了评估CRNG传输方案的性能,本文将从蜂窝用户吞吐量、D2D用户吞吐量及D2D用户接入率三个方面与不采用CRNG传输方案进行比较分析。
图3为采用CRNG传输方案和不采用CRNG传输方案蜂窝用户数据速率的对比。可以看出,两种方案的蜂窝用户速率都随着D2D用户数增加呈下降趋势,这是由于随着D2D用户数增加,成功接入网络的D2D对数也增加,对蜂窝用户的干扰越来越严重。另外,由图3可见CRNG方案实现的蜂窝用户速率略低一些,这是由于在CRNG方案中充当中继的蜂窝用户牺牲奇数时隙的通信用来接收D2D发送端发来的信息造成的。
图3 蜂窝用户速率
图4为两种方案D2D用户数据速率的对比。可以看出,随着D2D对数增加两种方案的D2D用户速率都呈现增加的趋势,这是由于随着D2D用户数增加,成功接入系统的D2D对数相应增加,使得吞吐量持续增加。另外采用CRNG传输方案的D2D对吞吐量明显高于传统方案的D2D对吞吐量,这是因为CRNG传输方案使用蜂窝用户充当D2D对中继,解决了部分D2D对由于距离原因不能接入系统的问题。
图4 D2D用户速率
图5为两种方案D2D对接入率的对比。可以看出,随着D2D对数增加采用CRNG传输方案的D2D对接入率下降趋势不明显,相比之下,不采用CRNG传输方案的D2D对接入率下降趋势比较明显。这是因为随着D2D数的增加,越来越多的D2D对由于距离原因不能建立直接通信链路,得不到服务的机会,而采用CRNG传输方案使得尽可能多的D2D用户接入网络,提高了D2D用户被服务的比率。
图5 D2D用户接入率
文献[6]以最大化总和速率为目标来确定D2D用户选择直接还是中继通信模式,实质是牺牲蜂窝用户的吞吐量来提高D2D用户的吞吐量,这是因为D2D采用中继模式通信时蜂窝用户作为D2D用户的中继无法与基站通信。与本文方法相比,文献[6]可以实现更高的D2D通信速率,本文考虑了中继用户与基站信息传输的情况,因此蜂窝用户的吞吐量比文献[6]要高。文献[7-8]使用专门的蜂窝用户作为D2D对的信息解码转发中继,系统中的中继数量越多,蜂窝用户的平均吞吐量也就越低,本文方法兼顾了中继用户与基站的通信,相较于文献[7-8]可以更好地保证系统中蜂窝用户的吞吐量。
在蜂窝网络覆盖下的D2D通信中,D2D对的距离并不是一个固定的数值,当D2D用户超出可建立直接通信链路距离的范围后,D2D用户可能得不到被服务的机会。本文提出CRNG传输方案,在保证中继蜂窝用户的正常通信的基础上,提高D2D用户的接入率。仿真分析表明,CRNG传输方案在保证蜂窝用户通信质量的同时提高了系统中D2D对的吞吐量,增加了D2D用户的接入比率,改善了蜂窝系统服务性能。