一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种低复杂度的信号检测方法及系统与流程

2021-11-24 21:16:00 来源:中国专利 TAG:


1.本技术涉及天线信号检测技术领域,尤其涉及一种低复杂度的信号检测方法及系统。


背景技术:

2.随着无线通信业务的发展,人们对数据传输速率的要求越来越高。由于大规模多输入多输出技术(multiple

input multiple

output,mimo)能同时带来分集增益和空间复用增益,显著提升无线通信的数据传输速率,成为第五代(5g)无线通信系统的关键技术之一。通过在基站部署数十至数百个天线,大规模mimo系统在功率效率、频谱效率和链路可靠性等方面表现出极大的优势。
3.然而,大量的天线和用户数目会导致更复杂的信号处理,给高吞吐量mimo系统设计带来了很大的挑战,例如,复杂度高、性能差等问题。信号检测是mimo系统中信号处理的重要组成部分,是指基站天线从混杂了多个用户干扰和噪声的接收信号中恢复出各个用户发送的数据符号的过程。
4.目前,信号检测方法中主要分为线性检测与非线性检测方法。线性检测计算过程相对简单,复杂度往往集中在矩阵求逆计算,且系统的误码率性能较差,典型方法有最小均方误差(mmse)方法。非线性方法复杂度较高,但系统的误码率性能通常优于线性检测方法,典型方法有期望传播(ep)方法。
5.通过利用大规模mimo系统中的信道硬化特性,一种非线性检测方法,即基于因子图模型的消息传递检测方法(mpd)被提出。信道硬化特性指随着矩阵维度的增加,系统矩阵对角线的元素远大于非对角线元素,出现对角占优的现象。在此前提下,某用户发送的数据符号上的干扰项(其他用户发送数据符号的干扰以及噪声)将变得很小。因此mpd方法将此干扰项近似为服从高斯分布,通过计算干扰项的均值和方差在因子图模型上传递概率信息来实现mimo检测。该方法主要包括干扰取消和星座匹配两个过程,干扰取消是将接收信号上对应的干扰项消除掉,消除干扰后进行星座匹配,星座匹配指在星座图上找到该传输符号对应的最可靠的调制点,从而恢复出该用户实际发送的数据符号。作为一种迭代算法,该方法不涉及矩阵求逆运算,具备比传统非线性检测方法更低的复杂度以及更好的检测性能。然而,mpd方法中仍然需要较多的指数和除法运算,给硬件实现带来一定的困难。随后,提出的一种低复杂度的mpd(lcmpd)方法,通过使用一种近似的概率更新方案,将原来所需要的指数和除法运算全部消除,同时几乎没有造成性能损失。然而,lcmpd方法的串并结合的更新方式对硬件实现不是特别友好,且该方法的星座匹配过程中仍然存在较多的乘法和加法运算,导致存在一定的计算冗余仍需要被进一步优化。


技术实现要素:

6.为了在mimo系统的信号检测过程中,提供一种低复杂度且利于高速硬件实现的检测方法,本技术实施例提供一种低复杂度的信号检测方法及系统。
7.本技术第一方面提供一种低复杂度的信号检测方法,包括:
8.s1,对mimo系统模型y=hx n进行匹配滤波,获得z=jx v,对于第i(1≤i≤2k)个实数用户,z
i
可表示为:
[0009][0010]
其中,h为瑞利平坦衰落信道矩阵,n为加性高斯白噪声向量,x为mimo系统发送信号向量,y为mimo系统接收信号向量,k为mimo系统的用户数,j为匹配滤波后的信道矩阵,其维度为2k
×
2k,j为下标索引,z为匹配滤波后的信道接收向量,n为mimo系统的接收天线数;
[0011]
s2,定义一个新变量为估计符号向量;
[0012]
其中,其中,为传统方法中使用的估计符号向量,在星座点集合里取值,对应地,在星座点集合里取值,m为调制模式;
[0013]
s3,根据信道接收向量z,确定2k个用户对应的初始估计符号值其中,其中,设置提前终止变量sum为0,并将当前迭代次数设为t=1,将当前的层数l设为0;
[0014]
s4,采用分层更新的形式进行检测迭代;
[0015]
s41,根据每个迭代层的实数域用户数量p,将一次迭代过程分成l=2k/p层进行,计算当前迭代层的p个实数域用户对应的信号干扰,并对所述信号干扰进行干扰取消,k为mimo系统用户数;
[0016]
s42,计算个星座点对应的可靠性度量值以及使绝对值最小的s
r

,将使绝对值最小的s
r

,作为当前迭代的估计符号向量其中分别对应集合b

中的个元素;
[0017]
s43,重复s41至s42,直到所有的l层运算完成,将当前迭代次数t加1,获得下一次迭代次数t 1,将当前层数l设为0;
[0018]
s44,判断迭代次数t 1是否大于最大迭代次数i
max
,若迭代次数t 1小于或等于最大迭代次数i
max
,则跳转至s41,若迭代次数t 1大于最大迭代次数i
max
,则终止检测迭代,并将输出当前迭代的估计符号向量
[0019]
可选地,在所述s42的步骤之后,还包括:
[0020]
s421,判断当前迭代的估计符号值是否等于上一迭代的估计符号值若则将提前终止变量sum加一;若则将提前终止变量sum置零;并将层数l加1;
[0021]
s422,判断提前终止变量sum是否大于或等于2k,如果提前终止变量sum大于或等于2k,则提前终止检测迭代,并将输出当前迭代的估计符号向量
[0022]
可选地,所述对mimo系统模型y=hx n进行匹配滤波,获得z=jx v的步骤,具体为:
[0023]
将信道模型和星座调制从复数域转化到实数域,获得mimo系统模型y=hx n;
[0024]
在mimo系统模型y=hx n的两边乘以h
t
/n,获得z=jx v;其中,所述发送信号向量x中的元素将从实数域的星座点集合b中取值:
[0025][0026]
其中,n为mimo系统的接收天线数,m为调制模式。
[0027]
可选地,所述s42中的可靠性度量值采用以下模型获得:
[0028][0029]
其中,为s41中计算出的当前迭代层的p个实数域用户对应的信号干扰,分别对应集合b

中的个元素。
[0030]
可选地,所述2k个用户对应接收向量的初始估计值采用以下模型获得:
[0031][0032]
其中,floor指的是向下取整函数。
[0033]
可选地,还包括初始化过程中将信道矩阵的对角线元素近似为1。
[0034]
本技术第二方面提供低复杂度的信号检测系统,所述一种低复杂度的信号检测系统用于执行本技术第一方面提供的一种低复杂度的信号检测方法,包括:
[0035]
滤波模块,用于对mimo系统模型y=hx n进行匹配滤波,获得z=jx v;
[0036]
初始化模块,用于定义变量为估计符号向量;其中,且在星座点集合里取值,m为调制模式;
[0037]
以及,用于根据信道接收向量z,确定2k个用户对应的初始估计符号值其中,其中,以及,用于设置提前终止变量sum为0;还用于将当前迭代次数设为t=1,以及,用于将当前的层数l设为0;
[0038]
分层迭代模块,用于采用分层更新的形式进行检测迭代;
[0039]
具体为:用于执行s41,根据每个迭代层的实数域用户的数量p,将一次迭代过程分成l=2k/p层进行,计算当前迭代层的p个实数域用户对应的信号干扰,并对所述信号干扰进行干扰取消;
[0040]
还用于执行s42,计算个星座点对应的可靠性度量值以及使绝对值最小的s
r

,将使绝对值最小的s
r

,作为当前迭代的估计符号向量其中分别对应集合b

中的个元素;
[0041]
还用于执行s43,重复s41至s42,直到所有的l层运算完成,将当前迭代次数t加1,获得下一次迭代次数t 1,将当前层数l设为0;
[0042]
还用于执行s44,判断迭代次数t 1是否大于最大迭代次数i
max
,若迭代次数t 1小于或等于最大迭代次数i
max
,则跳转至s41,若迭代次数t 1大于最大迭代次数i
max
,则终止检测迭代,并将输出当前迭代的估计符号向量
[0043]
可选地,所述分层迭代模块,还用于判断当前迭代的估计符号值是否等于上一迭代的估计符号值若则将提前终止变量sum加一;若则将提前终止变量sum置零;并将当前层数l加1;
[0044]
以及,用于判断提前终止变量sum是否大于或等于2k,如果提前终止变量sum大于或等于2k,则提前终止检测迭代,并将输出当前迭代的估计符号向量
[0045]
可选地,所述滤波模块,还用于将信道模型和星座调制从复数域转化到实数域,获得mimo系统模型y=hx n;
[0046]
以及,用于在mimo系统模型y=hx n的两边乘以h
t
/n,获得z=jx v。
[0047]
可选的,所述初始化模块对2k个用户采用全并行操作。
[0048]
由上述技术方案可知,本技术提供一种低复杂度的信号检测方法及系统,所述一种低复杂度的信号检测方法为改进的分层mpd方法(ilmpd)。ilmpd方法采用分层(部分并行)的更新方式,更有利于高吞吐量硬件架构的设计与实现,并且在相同迭代次数下几乎没有造成性能损失。同时通过算法变换或近似,本方案减少了关键路径上的运算,进一步缩减了乘法和加法操作的数量,以及降低处理周期。首先,在干扰消除过程中,利用星座点特性,提出在更小位宽的操作数上进行运算,有效缩短硬件实现时的关键路径并且降低实现复杂度;在星座匹配过程中,利用二次函数的特性,提出了一种新的可靠性度量方法,使得所需的乘法和加法运算的数量各减少一半;第三,将信号检测方法重构为初始化和迭代步骤,以减少处理周期,并通过合理的近似方法将初始化过程中所需的乘法、加法和排序操作完全消除。此外,本技术实施例还提出一种轻量级的提前终止方法,大大地缩减了迭代所需的次数,仿真表明迭代次数在高信噪比(snr)点可以降低20%左右。
附图说明
[0049]
为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单的介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0050]
图1为本技术实施例提供的一种低复杂度的信号检测方法的流程示意图;
[0051]
图2为本技术实施例提供的信号检测方法的比特误码性能和原始的lcmpd方法以及mmse方法相比示意图;
[0052]
图3为本技术实施例提供的提前终止方案和不使用提前终止方案相比,平均迭代次数的比较示意图。
具体实施方式
[0053]
为了在mimo系统的信号检测过程中,提供一种低复杂度且利于高速硬件实现的检测方法,本技术实施例提供一种低复杂度的信号检测方法及系统。
[0054]
如图1所示,本技术实施例第一方面提供一种低复杂度的信号检测方法,在大规模mimo系统的上行链路中,首先,获取mimo系统的接收天线数为n,用户数为k,调制模式为m(m可取4,16,64,256等)阶正交幅度调制(m

qam),并将mimo系统实数域化,具体为,将信道模型和星座调制从复数域转化到实数域,则发送信号向量x和接收信号向量y的维度都变成了
复数域的两倍,分别为2k和2n。对于m

qam调制,发送向量x中的元素将从实数域的星座点集合b中取值,其中
[0055]
实数域化后的mimo的系统模型可表示为y=hx n,其中h为瑞利平坦衰落信道矩阵,n为加性高斯白噪声向量。在等式左右两边乘以h
t
/n,变形得到z=jx v,对于第i(1≤i≤2k)个实数用户,z
i
可表示为:
[0056]
以上操作为s1,对mimo系统模型y=hx n进行匹配滤波,获得z=jx v。
[0057]
通过对接收信号向量y进行匹配滤波操作,将原来包含n个元素的接收y向量变成包含2n个元素的z向量。
[0058]
其中,噪声加上其他用户发送数据的干扰我们称之为干扰项mimo检测方法的目标就是消除干扰项对传输符号x
i
的影响,j为下标索引,z为匹配滤波后的信道接收向量,n为mimo系统的接收天线数。
[0059]
s2,定义一个新变量为估计符号向量;
[0060]
其中,其中,为传统方法中使用的估计符号向量,在星座点集合里取值,对应地,在星座点集合里取值,m为调制模式。
[0061]
在mimo检测过程中,用表示第i个接收向量在第t次迭代的估计值,为了缩短硬件实现时的关键路径,定义一个新的变量为估计符号向量,其中所以在星座点集合里取值。新变量的位宽比原来的小一位,从而可以在更小的位宽上进行运算。该运算位于关键路径上,可以缩短硬件实现时的关键路径,并减少一定的复杂度。
[0062]
本技术实施例提出的ilmpd检测方法分为初始化和迭代两个过程,首先进入初始化过程。
[0063]
s3,根据信道接收向量z,确定2k个用户对应的初始估计符号值其中,其中,设置提前终止变量sum为0,并将当前迭代次数设为t=1,将当前的层数l设为0。
[0064]
2k个用户对应接收向量的估计值可用以下公式计算得出:
[0065][0066]
其中,1≤i≤2k,并且floor指的是向下取整函数。
[0067]
初始化完成后进入迭代过程:
[0068]
s4,采用分层更新的形式进行检测迭代,迭代采用分层的形式进行。
[0069]
s41,根据每个迭代层的实数域用户的数量p,将一次迭代过程分成l=2k/p层进
行,计算当前迭代层的p个实数域用户对应的信号干扰,并对所述信号干扰进行干扰取消,k为mimo系统用户数;每一层的运算主要分为干扰取消和星座匹配两个过程。干扰取消是将其他用户在该用户上的数据干扰消除掉,本技术实施例用以下公式计算第l层中所包含的p个实数域用户lp 1≤i≤(l 1)p对应的干扰:
[0070][0071]
星座匹配过程为:s42,计算个星座点对应的可靠性度量值以及使绝对值最小的s
r

,将使绝对值最小的s
r

,作为当前迭代的估计符号向量其中分别对应集合b

中的个元素,其中:
[0072][0073]
式中,lp 1≤i≤(l 1)p,然后找到使绝对值最小的s
r

,作为当前迭代的估计符号向量
[0074][0075]
在本技术实施例中,为了有效减少所需的平均迭代次数,提出了一种轻量级的提前终止方法,当连续l层的信号估计向量与前l层完全相同时,继续迭代下去没有意义,所以可以提前终止迭代过程,从而有效缩短所需的迭代次数,判断迭代是否需要提前终止的具体过程为:
[0076]
s421,判断当前迭代的估计符号值是否等于上一迭代的估计符号值若则将提前终止变量sum加一;若则将提前终止变量sum置零;并将当前层数l加1。
[0077]
s422,判断提前终止变量sum是否大于或等于2k,如果提前终止变量sum大于或等于2k,则提前终止检测迭代,并将输出当前迭代的估计符号向量
[0078]
在实际应用过程中,如果发现与上一次迭代得到的结果相等,即则令变量sum=sum 1,否则将sum置零。将层数l加1,每一层运算完成后,将比较sum是否大于或等于2k,如果大于或等于2k,则证明连续l层的估计值与上一个l层的估计值完全相同,则此时继续迭代下去没有意义,所以提前终止代过程,如果sum<2k,则迭代将继续运行。
[0079]
s43,重复s41至s42,直到所有的l层运算完成,将当前迭代次数t加1,获得下一次迭代次数t 1,将当前层数l设为0。
[0080]
s44,判断迭代次数t 1是否大于最大迭代次数i
max
,若迭代次数t 1小于或等于最大迭代次数i
max
,则跳转至s41,若迭代次数t 1大于最大迭代次数i
max
,则终止检测迭代,并将输出当前迭代的估计符号向量
[0081]
通过本技术实施例提供的检测方法,获取最终的接收信号的估计值1≤i≤2k,接收信号的估计值再通过解调,即可以得到用户发送的二进制信号。
[0082]
本技术实施例提供的一种低复杂度的信号检测方法,关键点在于提出一种复杂度
更低,更利于高速硬件实现的应用于大规模天线系统的消息传递检测方法。
[0083]
主要的关键点主要包括以下几点:
[0084]
(1)在现有的低复杂度消息传递检测方法lcmpd方法中引入一种分层更新的方式,取代原有的串并结合的更新方式,更有利于高速硬件实现。
[0085]
(2)将该消息传递检测方法重构为初始化过程(步骤s3)和迭代过程(步骤s4),初始化过程采用全并行操作,有效减少所需要的处理周期。迭代过程仍采用分层更新的方式。
[0086]
(3)在初始化过程中,将信道矩阵的对角线元素近似为1,再经过算法变换可使得复杂的初始化操作简化为向下取整操作。在不影响性能的前提下,极大地降低初始化复杂度。
[0087]
(4)基于消息传递检测方法,在干扰取消过程(步骤s41)中,提出在更小位宽的操作数上进行运算,有效缩短硬件实现时的关键路径并且一定程度上减少硬件复杂度。
[0088]
(5)基于消息传递检测方法,在星座匹配过程(步骤s42)中提出了一种新的可靠性度量方法,和lcmpd方法相比该方法将所需的乘法和加法数量各减少一半。
[0089]
(6)基于消息传递检测方法,提出了一种轻量级的提前终止方法,即步骤s421与步骤s422,当连续l层的信号估计向量与前l层完全相同时,继续迭代下去没有意义,所以可以提前终止迭代过程。该方法可以有效缩短所需的迭代次数。
[0090]
与之前的lcmpd方法相比,本技术实施例提出的方法复杂度更低,更有利于高速硬件实现,同时提出的提前终止方案使得所需的迭代次数更少,且和原有方法相比几乎没有性能损失。
[0091]
为了更清楚地说明本技术实施例的优点,本技术实施例提供以下具体实施方式进行说明。
[0092]
实施例:以天线数n=128,调制256

qam为例进行说明。mimo系统模型的信号检测分别采用最小均方误差方法(mmse),低复杂度消息传递方法(lcmpd),以及本技术实施例提供的改进的分层消息传递方法(ilmpd)。在提出的ilmpd方法中,当用户数k=8,用户被分成2层进行迭代检测。其余情况用户被分成4层进行迭代检测。对于k=32,16,8,两种mpd方法的最大迭代次数分别设为7,5,4。如图2所示,在更低复杂度的情况下,本技术实施例的方案的比特误码率(bit error rate)性能和原始的lcmpd方法相比在所有仿真信噪比(snr)点都几乎没有损失,并且优于mmse方法。
[0093]
图3展示了平均迭代次数的比较。本技术实施例提出的提前终止方案和不采用提前终止方案相比,可有效减少所需的平均迭代次数。对于k=32,16,8,本技术实施例提出的提前终止方案在仿真的最大snr点可以分别降低21.0%,19.0%,和17.8%的迭代次数。以下表1列出了k=32时原始lcmpd方法和本发明提出的ilmpd方法的算法复杂度比较。乘法数量,加法数量以及比较数量分别缩减了21.3%,29.9%和12.4%。总结来说,和原始lcmpd方法相比,本技术实施例提出的ilmpd方法,可在几乎没有性能损失的情况下,具有更低的算法复杂度,更低的迭代次数,以及更利于高吞吐量的硬件实现。
[0094]
表1
[0095][0096]
[0097]
本技术实施例第二方面提供一种低复杂度的信号检测系统,所述一种低复杂度的信号检测系统用于执行本技术实施例第一方面提供的一种低复杂度的信号检测方法,包括:
[0098]
滤波模块,用于对mimo系统模型y=hx n进行匹配滤波,获得z=jx v。
[0099]
初始化模块,用于定义变量为估计符号向量;其中,且在星座点集合里取值,m为调制模式。
[0100]
以及,初始化模块,用于根据信道接收向量z,确定2k个用户对应的初始估计符号值其中,其中,以及,用于设置提前终止变量sum为0;还用于将当前迭代次数设为t=1,以及,用于将当前的层数l设为0。
[0101]
分层迭代模块,用于采用分层更新的形式进行检测迭代。
[0102]
具体为:分层迭代模块,用于执行s41,根据每个迭代层的实数域用户的数量p,将一次迭代过程分成l=2k/p层进行,计算当前迭代层的p个实数域用户对应的信号干扰,并对所述信号干扰进行干扰取消。
[0103]
分层迭代模块,还用于执行s42,计算个星座点对应的可靠性度量值以及使绝对值最小的s
r

,将使绝对值最小的s
r

,作为当前迭代的估计符号向量其中,分别对应集合b'中的个元素。
[0104]
分层迭代模块,还用于执行s43,重复s41至s42,直到所有的l层运算完成,将当前迭代次数t加1,获得下一次迭代次数t 1,将当前层数l设为0。
[0105]
分层迭代模块,还用于执行s44,判断迭代次数t 1是否大于最大迭代次数i
max
,若迭代次数t 1小于或等于最大迭代次数i
max
,则跳转至s41,若迭代次数t 1大于最大迭代次数i
max
,则终止检测迭代,并将输出当前迭代的估计符号向量
[0106]
进一步的,所述分层迭代模块,还用于判断当前迭代的估计符号值是否等于上一迭代的估计符号值若则将提前终止变量sum加一;若则将提前终止变量sum置零;并将当前层数l加1。
[0107]
以及,所述分层迭代模块还用于判断提前终止变量sum是否大于或等于2k,如果提前终止变量sum大于或等于2k,则提前终止检测迭代,并将输出当前迭代的估计符号向量
[0108]
进一步的,所述滤波模块还用于将信道模型和星座调制从复数域转化到实数域,获得mimo系统模型y=hx n。
[0109]
以及,所述滤波模块还用于在mimo系统模型y=hx n的两边乘以h
t
/n,获得z=jx v。
[0110]
进一步的,所述初始化模块对2k个用户采用全并行操作。
[0111]
由上述技术方案可知,本技术实施例提供的一种低复杂度的信号检测方法及系统,所述一种低复杂度的信号检测方法为改进的分层mpd方法(ilmpd)。ilmpd方法采用分层(部分并行)的更新方式,更有利于高吞吐量硬件架构的设计与实现,并且在相同迭代次数下几乎没有造成性能损失。同时通过算法变换或近似,本方案减少了关键路径上的运算,进一步缩减了乘法和加法操作的数量,以及降低处理周期。首先,在干扰消除过程中,利用星
座点特性,提出在更小位宽的操作数上进行运算,有效缩短硬件实现时的关键路径并且降低实现复杂度;在星座匹配过程中,利用二次函数的特性,提出了一种新的可靠性度量方法,使得所需的乘法和加法运算的数量各减少一半;第三,将信号检测方法重构为初始化和迭代步骤,以减少处理周期,并通过合理的近似方法将初始化过程中所需的乘法、加法和排序操作完全消除。此外,本技术实施例还提出一种轻量级的提前终止方法,大大地缩减了迭代所需的次数,仿真表明迭代次数在高信噪比(snr)点的降低幅度可以达到20%。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献