一种多输入多输出信号检测方法和装置
技术领域
本发明涉及信号检测技术,特别涉及一种多输入多输出(MIMO)信号检测方法和装置。
背景技术
MIMO最大似然(Maximum Likelihood,ML)检测可以使系统获得最佳的误码率性能,但ML的遍历式搜索的运算复杂度太高,因此,在实际系统中ML检测方法往往难以实时实现或不能实现。
针对该ML算法复杂度过高的问题,有人提出了如下的球形译码算法来进行MIMO信号的检测。在图1所示的N根发射天线、M根接收天线的MIMO系统模型中,接收信号可以表示为:r=Hs+n,
其中 为空间信道矩阵,s为发射的信号s=(s1,s2,...,sN)T,r=(r1,...,rM)T为接收信号,n为噪声;
基于上述MIMO系统模型,目前的球形译码检测方法包括:
1、对空间信道矩阵进行排序QR分解,即H=QR,其中,Q是一个酉矩阵,R是一个上三角矩阵。
2、利用分解结果对接收信号r进行均衡处理,得到修正接收信号y=QHr。
由于Q是酉矩阵,因此QHQ=I,y=QHr=QHQR·s+QH·n=R·s+QH·n。
接下来根据y=R·s+QH·n进行发送信号s的检测。
3、进行球形译码的幸存路径搜索。
在球形译码中,不同发射天线上的发送符号,分成不同的层来表示,所有发射天线上的各种可能的发送符号组合,构成球形译码的搜索树,如图2所示。
在图2中,将层由下向上进行编号,其中,每一层代表一根发射天线上的发送符号,每个节点代表发送符号的一种取值,即一个星座点,因此,每层的节点个数与该层对应发送符号的调制星座点个数相等,利用若干比特表示每个节点的具体取值,节点的比特数等于该节点对应发送符号的调制阶数。例如,假定第4层对应的发送符号调制方式为QPSK,则第4层有4个节点,每个节点利用2个比特表示。
在搜索树中,从最后一层到第一层的任意一条路径,代表各个发射天线的一种可能的发送符号组合。
按照深度或宽度优先方式搜索树中的节点,在树的每一层保留与修正接收信号间欧式距离最近的若干个节点,再基于保留下来的幸存节点,进行下层路径搜索。
其中,节点与修正接收信号间欧式距离的平方称为该节点的路径权值,发送符号sl对应搜索树的第l层节点,该层节点的路径权值的计算方式为: yi为修正接收信号中的第i层信号,Ri,j为上三角矩阵R的第i行第j列元素,si为当前节点的发送符号取值,sj为当前节点的各父节点对应的发送符号取值。对于第l层的不同节点,相应si和sj的取值不同,因此计算得到的路径权值dl 2也不同。
最后,由各层的幸存节点构成多条幸存路径,给出多种最可能的发送符号组合。
4、根据每层幸存节点计算每一层的发送符号中每个比特的对数似然比(LLR),并输出计算结果。
其中,计算发送符号sl中第k个比特LLR值的方式为:在发送符号sl的第k个比特取值为0的各个幸存节点中,选择路径权值最小的节点,并在该发送符号sl的第k个比特取值为1的各个幸存节点中,也选择路径权值最小的节点,利用选择出的两个节点的路径权值计算第k个比特的LLR值。
至此,球形译码的检测方法流程结束。
在上述球形译码的检测方法流程中,为在第4步计算和输出LLR值,需要在第3步的搜索过程中,将各个层的幸存节点的路径权值进行保存和处理,从而需要耗费较多的存储单元和复杂的计算单元。并且,随着发射天线数目的增加和调制方式的复杂度增加,耗费的存储单元数量和计算单元的复杂度也将大幅度增加。
发明内容
有鉴于此,本发明提供一种MIMO信号检测方法和装置,在球译码搜索过程中,能够降低存储量和计算复杂度。
为实现上述目的,本发明采用如下的技术方案:
一种多输入多输出信号检测方法,包括:
a、对空间信道矩阵进行排序QR分解,并利用分解结果对接收信号r进行均衡处理,得到修正接收信号y=QHr,Q为排序QR分解得到的酉矩阵,(·)H表示矩阵的共轭转置;设置待译码的各个层中每个比特的各种取值各自对应的最小路径权值min[layer][jth][μ],并将各个所述最小路径权值初始化为+∞,其中,layer为层索引,jth为层中的比特索引,μ为比特的取值;
b、搜索球形译码树,将搜索的第一个节点作为当前节点;
c、计算当前节点对应的路径权值;判断所述当前节点对应的路径权值,是否小于当前节点所在层的第jth个比特的当前取值μ对应的最小路径权值,若是,则将当前节点所在层的第jth个比特的当前取值μ对应的最小路径权值更新为当前节点对应的路径权值;否则,保持当前节点所在层的第jth个比特的当前取值μ对应的最小路径权值不变,其中,jth=1,...,W,W为当前节点所在层的调制阶数;
d、判断是否完成球形译码树的搜索,若是,根据各个层中每个比特各种取值对应的最小路径权值,计算各个层中每个比特的对数似然比LLR,分别用于进行各个层的比特译码;将搜索的下一个节点作为当前节点,返回步骤c。
较佳地,所述计算当前节点对应的路径权值为: 其中,yi为修正接收信号中的第i层信号,Ri,j为所述QR分解得到的上三角矩阵的第i行第j列元素,l为当前节点所在的层索引,si和sj分别为当前节点及其父节点对应的发送符号取值。
一种多输入多输出的检测装置,包括:QR分解单元、存储单元、初始化单元、搜索和更新单元、软比特输出单元;
所述QR分解单元,用于对空间信道矩阵进行排序QR分解,并利用分解结果对接收信号r进行均衡处理,得到修正接收信号y=QHr,并提供给所述初始化单元、以及所述搜索和更新单元,其中,Q为排序QR分解得到的酉矩阵,(·)H表示矩阵的共轭转置;
所述存储单元,用于保存待译码的各个层中每个比特各种取值对应的最小路径权值min[layer][jth][μ],其中,layer为层索引,jth为层中的比特索引,μ为0或1;
所述初始化单元,在进行球译码树搜索前,将存储单元中保存的各个最小路径权值初始化为+∞;
所述搜索和更新单元,用于搜索球形译码树,对于搜索的每个当前节点,计算当前节点对应的路径权值;判断所述当前节点对应的路径权值,是否小于所述存储单元中保存的当前节点所在层的第jth个比特的当前取值μ对应的最小路径权值,若是,则将当前节点所在层的第jth个比特的当前取值μ对应的最小路径权值更新为当前节点对应的路径权值;否则,将前节点所在层的第jth个比特的当前取值μ对应的最小路径权值保持不变,其中,jth=1,...,W,W为当前节点所在层的调制阶数;在结束搜索后,通知所述软比特输出单元搜索完毕;
所述软比特输出单元,用于在接收到所述搜索和更新单元发送的搜索完毕通知后,利用所述存储单元中保存的各个层中每个比特各种取值对应的最小路径权值,计算各个层中每个比特的对数似然比LLR,并输出计算结果,分别用于进行各个层的比特译码。
由上述技术方案可见,本发明中,对空间信道矩阵进行排序QR分解,并利用分解结果对接收信号进行均衡处理,得到修正接收信号;并为搜索树各个层中每个比特的各种取值,对应设置各自的最小路径权值,在球形译码的搜索过程中,对每个节点计算路径权值后,直接将该路径权值与相应层中每个比特相应取值的最小路径权值进行比较,若前者小于后者,则更新该最小路径权值,否则,保持最小路径权值不变;当搜索完毕后,再根据每层每个比特各种取值的最小路径权值,计算并输出该层每个比特的LLR值。这样,在搜索过程中,只需要同步记录每层每个比特各种取值对应的最小路径权值,不需要将所有幸存节点的路径权值都记录下来,大大节省了存储量,并且每次仅需要进行两个路径权值的比较,大大降低了计算复杂度。
附图说明
图1为基于信道编码的MIMO系统模型。
图2为球形译码搜索树的示意图。
图3为本发明中MIMO信号检测方法的具体流程图。
图4为本发明中MIMO信号检测装置的具体结构图。
图5为本发明的MIMO信号检测方法和ML信号检测方法的性能比较示意图。
具体实施方式
为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图对本发明做进一步详细说明。
如前所述,计算某比特的LLR值时,需要利用的是相应比特取值为0的各个幸存节点的最小路径权值,以及相应比特取值为1的各个幸存节点的最小路径权值。基于此,本发明的基本思想是:在球形译码的搜索过程中,对每个层中每个比特取值为0和1的最小路径权值进行实时比较和更新,同步保存相应的最小路径权值,而不需要保存所有幸存节点的路径权值,从而实现搜索过程中最小路径权值的维护和更新,避免搜索过程结束后进行的统一的路径权值比较,减少了路径权值的存储量,降低了比较的复杂度。
接下来,对本发明的具体实现方式进行详细描述。
图3为本发明中MIMO信号检测方法的具体流程图。如图3所示,该方法包括:
步骤301,对空间信道矩阵进行排序QR分解,并利用分解结果对接收信号r进行均衡处理,得到修正接收信号y=QHr。
步骤302,为球形译码搜索树中的各个层中每个比特的各种取值,设置各自对应的最小路径权值,并将所有最小路径权值初始化为+∞。
本发明中,对应每层每个比特的每种取值,对应维护最小路径权值。本步骤中,设置并初始化需要维护的各个最小路径权值。其中,每层的比特数与该层对应发送符号的调制阶数相等,每个比特有两种取值,即0或1。最小路径权值利用min[layer][jth][μ]表示,其中,layer为层索引,jth为层中的比特索引,μ为比特的取值。
步骤303,按照深度或宽度优先搜索球形译码树,将搜索的第一个节点作为当前节点。
步骤304,根据当前节点每个比特的当前取值,计算当前节点对应的路径权值,依据该路径权值,对相应的最小路径权值进行维护和更新。
在本步骤中,计算当前节点对应路径权值的方式与背景技术中的方式相同,即计算当前节点与修正接收信号间的欧式距离的平方。
再依据计算得到的路径权值,判断是否需要对相应各个比特相同取值的最小路径权值更新。其中,需要对当前节点逐个比特进行判断和更新,对于每个比特的判断和更新方式相同,以第k个比特为例,判断和更新方式为:
假定当前节点第k个比特的取值μk,计算得到当前节点的路径权值为d2,在当前节点之前保存的当前节点所在层layer第k个比特取值μk对应的最小路径权值为min[layer][k][μk];判断min[layer][k][μk]是否大于当前节点的路径权值d2,若是,则将min[layer][k][μk]更新为当前节点的最小路径权值,否则保持min[layer][k][μk]不变。
例如,对于图2中的节点A,其所在层索引为3,该节点的取值为01,即第1个比特取值为0,第2个比特取值为1,则需要对与节点A相应比特取值相同的min[3][1][0]和min[3][2][1]进行维护和更新。
首先确定当前min[3][1][0],在搜索节点A之前,所有搜索过的第3层节点中第1个比特取值为0的最小路径权值就是min[3][1][0],将节点A的路径权值与min[3][1][0]进行比较,若节点A的路径权值小于min[3][1][0],则将min[3][1][0]更新为节点A的路径权值,否则,保持min[3][1][0]不变。由此可见,在每次判断和维护过程完成后,min[3][1][0]始终是,到目前为止所有搜索过的第3层节点中第1个比特取值为0的最小路径权值。
同理,确定当前min[3][2][1],将节点A的路径权值与min[3][2][1]进行比较,若节点A的路径权值小于min[3][2][1],则将min[3][2][1]更新为节点A的路径权值,否则,保持min[3][2][1]不变。
步骤305,判断是否完成球形译码树的搜索,若是,则执行步骤307,否则,执行步骤306。
步骤306,将搜索的下一个节点作为当前节点,返回步骤304。
若未完成球形译码树的搜索,则继续搜索下一个节点,并利用该节点的路径权值对相应的最小路径权值进行维护。
步骤307,根据各个层中每个比特各种取值对应的最小路径权值,计算并输出各个层中每个比特的LLR值,用于进行各个层的比特译码。
由于在搜索过程中,一直对各个min[layer][jth][μ]进行维护和更新,因此当完成球形译码树的搜索后,则就可以直接得到各个层每个比特各种取值对应的min[layer][jth][μ],不需要再另行比较。接下来,可以利用得到的min[layer][jth][μ]计算各个层中每个比特的LLR值,具体方式为:对于第layer层的第jth个比特,其LLR值为min[layer][jth][0]1/2与min[layer][jth][1]1/2之差。
将得到的各个层各个比特的LLR值输出,用于各个层的比特译码。具体利用输出的LLR值进行译码硬判决的方式与现有方式相同,这里就不再赘述。
至此,本发明中的MIMO信号检测方法流程结束。在上述流程进行球形译码搜索时,关于节点的搜索顺序、搜索半径的更新等,与现有方式相同,这里就不再另行描述。
同时,本发明还提供了一种MIMO信号检测装置,可以用于实施上述本发明的MIMO信号检测方法。该检测装置的结构如图4所示,包括:QR分解单元、存储单元、初始化单元、搜索和更新单元、软比特输出单元。
具体地,在该装置中,QR分解单元,用于对空间信道矩阵进行排序QR分解,并利用分解结果对接收信号r进行均衡处理,得到修正接收信号y=QHr,并提供给初始化单元、以及搜索和更新单元,其中,Q为排序QR分解得到的酉矩阵;
存储单元,用于保存待译码的各个层中每个比特各种取值对应的最小路径权值min[layer][jth][μ],其中,layer为层索引,jth为层中的比特索引,μ为0或1;
初始化单元,在进行树搜索前,将存储单元中保存的各个最小路径权值初始化为+∞;
搜索和更新单元,用于按照深度优先搜索球形译码树,对于搜索的每个当前节点,确定当前节点每个比特的当前取值,并计算当前节点对应的路径权值;判断所述当前节点对应的路径权值,是否小于所述存储单元中保存的当前节点所在层的第jth个比特的当前取值对应的最小路径权值,若是,则将当前节点所在层的第jth个比特的当前取值对应的最小路径权值更新为当前节点对应的路径权值;否则,将前节点所在层的第jth个比特的当前取值对应的最小路径权值保持不变,其中,jth=1,...,W,W为当前节点所在层的调制阶数;在结束搜索后,通知软比特输出单元搜索完毕;
软比特输出单元,用于在接收到搜索和更新单元发送的搜索完毕通知后,利用所述存储单元中保存的各个层中每个比特各种取值对应的最小路径权值,计算各个层中每个比特的对数似然比LLR,并输出计算结果,用于进行比特译码。
由上述本发明的具体实现可见,本发明通过节点路径权值计算和每层中每个比特的最小路径权值输出结合在一起,即:在球形译码路径搜索过程中,就对每层中每一个节点的比特进行最小路径权值比较,若当前节点的路径权值小于当前相应比特取值的最小路径权值,则更新相应比特取值的最小路径权值,若大于,则不进行最小路径权值更新,保持原有最小路径权值不变,最后获得每层路径每个比特置“0”和“1”的最小路径权值,通过最大对数似然比(Maximum Logarithm Likelihood)形式后验概率(A PosterioriProbability,APP)的Max_Log_MAP算法得到发射天线端口中每个符号中每个比特的LLR输出;可以大大简化算法的复杂度和中间值的存储单元,从而大大节省硬件资源的目的。
下面对本发明的MIMO信号检测方法和现有的最大似然(ML)信号检测方法进行性能比较,二者均输出LLR值。具体仿真条件如表1所示。仿真的无线信道条件设置为:ETU,170km/h,相关性为Medium,载波频率fc=2.6e9Hz。
表1
仿真参数设置 |
具体参数值 |
TDD or FDD |
TDD |
上行链路配置(Uplink-Downlink Configuration) |
2 |
特殊子帧配置(Special Sub-frame Configuration) |
0 |
带宽(Band Width)(MHz) |
10 |
小区ID(Cell ID) |
485 |
nRNTI |
0 |
循环前缀模式(CP Mode) |
正常(Normal) |
MIMO模式(MIMO Mode) |
SM |
发射天线数目(Tx Antenna Number) |
2 |
接收天线数目(Rx Antenna Number) |
2 |
码字数目(Code Word Number) |
2 |
层数(LayerNumber) |
2 |
传输块1长度(TransBlock1Size) |
4584 |
传输块2长度(TransBlock2Size) |
4584 |
码字1调制类型(Codeword1QAM Type) |
QPSK |
码字2调制类型(Codeword2QAM Type) |
QPSK |
PDCCH数目(PDCCHNumber) |
1 |
使用的子帧ID(Used Sub-frame ID) |
4 |
使用的时隙ID(Used Slot ID) |
8,9 |
每个时隙的资源块起始索引(RB Start Index in Each Slot) |
0,0 |
每个时隙的资源块数目(RB Number in Each Slot) |
44,44 |
RB Boost(dB) |
0 |
可用的资源块总数(RB Number can be Used) |
12672 |
图5为两种检测方法下的性能比较示意图。其中,曲线501是ML信号检测方法下接收端的信噪比(SNR)和误码率(BLER)的关系曲线,曲线502是本发明信号检测方法下接收端的SNR和BLER的关系曲线。由图5可见,本发明的检测方法性能与ML检测方法性能十分接近,可见,本发明的检测方法一方面保证了检测性能不受影响,另一方面大大降低了搜索过程的数据存储量和LLR的计算复杂度。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。