背景技术
基于重叠复用(OvXDM:Overlapped X Division Multiplexing)的调制解调技术包括多种具体实现方案,比如基于重叠时分复用(OvTDM:Overlapped Time DivisionMultiplexing)的调制解调技术、基于重叠频分复用(OvFDM:Overlapped FrequencyDivision Multiplexing)的调制解调技术、基于重叠码分复用(OvCDM:Overlapped CodeDivision Multiplexing)的调制解调技术、基于重叠空分复用(OvSDM:Overlapped SpaceDivision Multiplexing)的调制解调技术、基于重叠混合复用(OvHDM:Overlapped HybridDivision Multiplexing)的调制解调技术等。
需要说明的是,本申请中提及的OvXDM中,X代表任意域,例如时间T、空间S、频率F、码分C、混合H等。
下面仅以OvTDM为例进行简单说明。
首先,所谓时间分割(以下简称时分)复用(TDM:Time Division Multiplexing)是一种在数字通信中让多个占据较窄时间持续期的信号符号共享一个较宽时间持续期的技术。如图1所示,为常规的时分复用技术的示意图。
图1中各被复用信号符号的时间持续期(工程上称之为时隙宽度)分别为T1,T2,T3,T4,...,在工程上通常让它们占据相同的时隙宽度,ΔT为最小保护时隙,实际保护时隙宽度应该宽裕一些。ΔT应大于所使用解复用门电路的过渡时间宽度加上系统的最大时间抖动量。这是最常见的时分复用技术。现有绝大多数的多路数字广播系统、多路数字通信等系统采用的都是这种技术。
这种技术应用于数字通信时的最大特点是被复用信号符号之间在时间上是完全相互隔离的,决不会存在相互干扰,对被复用的信号符号没有任何限制,各个信号的符号持续期(时隙宽度)可以有不同的宽度,也能适用于不同的通信体制,只要它们的时隙相互不重叠交叉就可以了,因此使用最为广泛。但是这种复用,复用本身对改善系统的频谱效率毫无作用。
所以,传统的观点是相邻信道之间在时域上不重叠,以避免相邻信道之间产生干扰,但这种技术制约了频谱效率的提高。现有技术的时分复用技术的观点是各信道之间不但不需要相互隔离,而且可以有很强的相互重叠,如图2所示,现有技术将信道之间的重叠视为一种新的编码约束关系,并根据该约束关系提出了相应的调制和解调技术,因此称之为重叠时分复用(OvTDM:Overlapped Time Division Multiplexing),这种技术使得频谱效率随重叠次数K成比例的增加。
请参考图3,重叠时分复用系统包括信号发射机A01和接收机A02。
发射机A01包括重叠时分复用调制装置101和发射装置102。重叠时分复用调制装置101用于生成携带输入信号序列的复调制包络波形;发射装置102用于将该复调制包络波形发射到接收机A02。
接收机A02包括接收装置201和序列检测装置202。接收装置201用于接收发射装置102发射的复调制包络波形;序列检测装置202用于对接收的复调制包络波形进行时域内的数据序列检测,以进行判决输出。
通常,接收机A02还包括设置在接收装置201和序列检测装置202之间的预处理装置203,用于辅助形成每一帧内的同步接收数字信号序列。
在发射机A01中,输入的数字信号序列通过重叠时分复用调制装置101形成多个符号在时域上相互重叠的发射信号,再由发射装置102将该发射信号发射到接收机A02。接收机A02的接收装置201接收发射装置102发射的信号,经过预处理装置203形成适合序列检测装置202进行检测接收的数字信号,序列检测装置202对接收信号进行时域内的数据序列检测,从而输出判决。
请参考图4,重叠时分复用调制装置101(OvTDM调制装置)包括波形生成模块301、移位模块302、乘法模块303和叠加模块304。
波形生成模块301用于根据设计参数生成在时域内波形平滑的初始包络波形。
移位模块302用于根据重叠复用次数将初始包络波形在时域内按预定的移位间隔进行移位,以得到各固定间隔的移位包络波形。
调制模块305用于将输入的数字信号序列转换成正负符号表示的信号符号序列。
乘法模块303用于将所述信号符号序列与偏移后各固定间隔的移位包络波形相乘,以得到各调制包络波形。
叠加模块304用于将各调制包络波形在时域上进行叠加,以得到携带输入信号序列的复调制包络波形。
请参考图5,为接收机A02的预处理装置203的框图。
预处理装置203包括同步器501、信道估计器502和数字化处理器503。其中同步器501对接收信号在接收机内形成符号时间同步;接着信道估计器502对信道参数进行估计;数字化处理器503对每一帧内的接收信号进行数字化处理,从而形成适合序列检测装置进行序列检测接收的数字信号序列。
请参考图6,为接收机A02的序列检测装置202的框图。
序列检测装置202包括分析单元存储器601、比较器602及多个保留路径存储器603和欧氏距离存储器604或加权欧氏距离存储器(图中未示出)。在检测过程中,分析单元存储器601做出重叠时分复用系统的复数卷积编码模型及格状图,并列出重叠时分复用系统的全部状态,并存储;而比较器602根据分析单元存储器601中的格状图,搜索出与接收数字信号最小欧氏距离或加权最小欧氏距离的路径;而保留路径存储器603和欧氏距离存储器604或加权欧氏距离存储器则分别用于存储比较器602输出的保留路径和欧氏距离或加权欧氏距离。其中,保留路径存储器603和欧氏距离存储器604或加权欧氏距离存储器需要为每一个稳定状态各准备一个。保留路径存储器603长度可以优选为4K~5K。欧氏距离存储器604或加权欧氏距离存储器优选为只存储相对距离。
在OvXDM系统中,信号发射机对信号调制后发射给信号接收机,信号接收机接收到调制信号后对其进行解调。解调过程中包括译码步骤(即上述序列检测装置执行的序列检测步骤),在传统译码中,需要不断的访问折叠树图(Trellis图)中的节点,并为每一个节点设置两个存储器,一个用于存储达到该节点的相对最佳路径的欧氏距离,一个用于存储到达该节点的相对最佳路径。对于一个重叠重数为K的M维调制的系统,Trellis图中的节点数为MK,由于译码过程中,需要对每个节点进行扩展,因此节点数决定了译码的复杂度,造成译码复杂度随重叠重数指数增加。众所周知,OvXDM系统中,重叠重数K越大频谱效率越高,因此需要尽可能的增加重叠重数K,而对于传统的译码算法,如维特比译码,当重叠重数增大到一定值(K>8)时,译码复杂度急剧增加,现有译码方法难以满足实时译码的需求,频谱效率与译码速率就形成了一对矛盾。因此,需要降低译码复杂度,提升译码效率。
具体实施方式
首先,需要说明的是,本申请提供的基于重叠复用(OvXDM)的译码方法、装置及调制解调方法和系统中,X代表任意域,例如时间T、空间S、频率F、码分C、混合H等。为了便于说明,本申请实施例主要以重叠时分复用(OvTDM)为例进行说明。本领域技术人员人应当知晓,本申请要求保护的基于重叠复用的译码方法、装置及调制解调方法和系统同样可以应用于其他域的重叠复用技术中。
在对重叠复用调制解调技术研究中,本领域技术人员皆采用传统的译码方法,在传统译码方法中,需要不断的访问折叠树图(Trellis图)中的节点,并为每一个节点设置两个存储器,一个用于存储达到该节点的相对最佳路径的欧氏距离,一个用于存储到达该节点的相对最佳路径。对于一个重叠重数为K的M维调制的系统,Trellis图中的节点数为MK,由于译码过程中,需要对每个节点进行扩展,因此节点数决定了译码的复杂度,造成译码复杂度随重叠重数指数增加。众所周知,OvXDM系统中,重叠重数K越大频谱效率越高,因此需要尽可能的增加重叠重数K,而对于传统的译码算法,如维特比译码,当重叠重数增大到一定值(K>8)时,译码复杂度急剧增加,现有译码方法难以满足实时译码的需求,频谱效率与译码速率就形成了一对矛盾。
然而,虽然目前的译码方法中存在上述问题,但是由于这些方法已广为使用,本领域技术人员已全面接受使用这种方法,而不再花费成本去寻找更优的译码方法。
本申请中,发明人通过采用不同的技术构思,采用球译码算法,通过预先设定一个搜索半径,对球内格点循环搜索,不断减小搜索半径,最终找到最具可能性的发送序列,从而解决上述技术问题。
下面通过具体实施方式结合附图对本申请作进一步详细说明。
实施例一
请参考图7,本实施例提供了一种基于重叠复用的译码方法,包括下面步骤:
步骤1.1:获取携带有输入信息的数字信号。接收端根据复调制包络波形得到携带有输入信息的数字信号。复调制包络波形为调制过程中得到的携带有原始信号的波形,其在调制端被发射出来,由解调端接收。
步骤1.2:基于球译码算法对数字信号在相应域内进行译码,得到最佳译码路径;具体包括:预先设定一个搜索半径,对球内格点循环搜索,不断减小搜索半径,直至找到最具可能性的发送序列。其中,相应域包括时域、空域、频域、码域、混合域等,其由重叠复用技术中采用的域确定。
步骤1.3:进行判决输出。
在重叠复用调制解调技术中,常用的检测算法有:最大似然算法(ML,MaximumLikelihood)、迫零检测算法(ZF,Zero Forcing)、最小均方误差算法(MMSE,Minimum MeanSquare Error)、球型译码算法(SD,Sphere Decoder)等。ML为最优算法但缺点是复杂度呈指数增长无法实用化;ZF检测算法具有最低的复杂度,但是误码率较高;MMSE算法也有较高的误码率;球译码算法是一种性能接近于ML算法但复杂度低的检测算法。它的基本思想是以接受矢量Y为球心,预先设定一个搜索半径C,通过对球内点的循环搜索不断减小搜索半径,最终找到最具可能性的发送向量。
下面对球译码算法进行介绍:
球译码的思想是减少搜索的格点数,仅搜索在以接收矢量为球心的一个球体内的所有格点。如果在这个搜索球内存在格点,易知最近格点必然在该球内,那么球外的节点都可以不用再搜索,需要搜索的格点数大大减少了,搜索的点少了,自然复杂度也就下降了。球译码是一种ML算法,最终可以得到最优的最大似然解,球译码算法复杂度与信噪比有关系。
假设发送端发送数据序列b∈U
M*1进入信道,U为一有限字符集。接收到的信号y可表示为y=Hb,其中y∈U
M*1是接收向量,H∈U
N*M是信道矩阵,矩阵的列数为M行数为N;H在接收端是已知的,球译码的目的就是在接收端找到一组码序列
使其满足
且满足||y-Hb||
2≤d
2,d为球译码半径。
球译码理论推导过程如下:
(1)对信道矩阵H进行分解
常用的分解包括Cholesky(乔里斯基)分解和QR分解。当然,在其他实施例中,也可以采用其他可以达到同样目的分解方法。
Cholesky分解是将H分解为H=LTL,其中L是M位的非奇异上三角矩阵;QR分解是将H分解为H=QR,Q是酉矩阵,R是上三角矩阵。
本实施例中,采用QR分解法,将H分解为H=QR,如果H的大小表示为N×M(N≥M),那么经过QR分解后,R是M×M上三角矩阵,Q=[Q1 Q2]是N×N的正交矩阵,矩阵Q1和Q2分别代表Q的前M列和后N-M列,因此H也可以写成:
(2)寻找球体内格点
将(1)中经过QR分解的H矩阵带入关系式||y-Hb||2≤d2中得到
推广到K时,
其中d为初始设定的球译码半径,d'为随着译码深度的加深逐渐缩小的子半径,b为球内格点。经过反复的寻找球内格点,确定最终的译码路径。
由OvXDM的码树图(如图8所示)可知,每一个父节点有两个子节点(分别对应输入信息为1和-1),码树图的第i级一共有2i个节点,最终高度为n的树中总共含有2n+1-1个节点。在图8中,第0级的节点被称为根节点,第n级的节点被称为叶子节点,除第n级的叶子节点外,每一级的节点都有两个子节点,除根节点外,每个节点都有一个父节点。从根节点到某个叶子节点的完整路径,都对应着一组判决结果。球译码算法也就是在码树图这个“树”中,搜索一条度量最小的从“树根”到“叶子”的路径。
OvXDM球译码的思想就是以输入信息为中心,在半径为d的n维超球内寻找最接近球心的位置,从而实现译码。首先根据信噪比设定球半径,从根节点出发,通过球半径对节点进行扩展,然后对扩展后的节点继续扩展,直至无法找到球半径内的子节点,此时对其相应的兄节点进行扩展,如果兄节点也没有在球半径内的子节点,则退回至父节点,对父节点的兄弟节点进行扩展,直到回退到根节点,仍然无法找到至少一条根节点到叶子节点的完整路径,重新计算球半径,将球半径适量的增大;如此反复进行,直至找完球半径内的所有路径,并至少找到了一条根节点到叶子节点的完整路径,此时结束译码,从最终筛选出的多条路径中选出距离最小的一条路径作为最终的译码输出结果,如附图9所示。
本实施中假设发送信息序列为x,信息长度L=10,重叠次数K=5,以矩形波为复用波形,其复用波形系数表示为h=[1,1,1,1,1],对其进行K次重叠编码,对应的信道矩阵可表示为H,其大小为(L+K-1)×L。发送端对信息序列进行编码,经过信道传输,接收端收到信号后,经过一系列信号处理,最终得到待译码的序列为y,长度为L。
如图10所示,OvXDM的球译码过程如下:
S1:对信道矩阵H进行QR分解
对信道矩阵H进行QR分解,表示为H=QR,如果H的大小表示为N×M(N≥M),那么经过QR分解后,R是M×M上三角矩阵,Q=[Q
1Q
2]是N×N的正交矩阵,矩阵Q
1和Q
2分别代表Q的前M列和后N-M列,因此H也可以写成
本实施例中N=L+K-1=14,M=L=10。
S2:设定初始球译码半径d,令k=M。
根据公式d2=αNδ2设定球半径大小,球半径的大小与数据长度N和噪声方差δ2有关,α为半径系数,可根据实际情况对球半径大小适当调整,是经验值。
由OvXDM的Trellis图可知,节点由原点扩展最后还会回归到原点,本实施例中,采用从后向前的顺序译码,每一个节点经过扩展,有两个到达节点,如果称其中一个节点为子节点的话,那么对应的另一个节点称为其兄节点,对应的扩展前的节点为其父节点。
需要说明的是,球译码半径太大,球体内包含的点太多,搜索复杂度成指数形式增长;球译码半径太小,就可能在球体内不包含任何格点,导致算法在增大半径之后进行重新搜索,导致搜索复杂度急剧上升。所以,需要合理地设置球译码半径。
S3:计算zk|k+1和dk'2,确定bk的范围
由上述球译码理论推导过程可知,
k为节点索引,由于从后向前译码,k=1时,表示最后一个译码节点。k=M时,z
M=Q
1 *y,其中Q
1是S1中QR分解得到的,y是待译码序列;
d为S2中设置的初始球半径,当k≠M时,随着译码深度的加深,球半径逐渐缩小,将d'称为子半径。
S4:选取一个bk,如果为空,跳至S5;否则,跳至S6。
在球半径内选取一个节点bk,对其进行扩展,如果扩展后的节点不在球半径内,那么退回到该节点的父节点,进行步骤S5;如果扩展后的节点在该球半径内,那么继续对该节点进行扩展,进行步骤S6。
S5:k=k+1返回父节点,如果k=M+1,且{bk}为空,跳至S2;如果{bk}不为空,结束;否则跳至S4。
如果此时k=M+1且球半径内不包含任何节点,说明初始选择的球半径d过小,那么跳至S2重新设定球半径,可修改系数α适当的将球半径扩大,比如将球半径扩展为原先的1.5倍大。如果球半径内包含节点,说明此半径下可找到可能的译码节点路径,则译码过程结束。
如果此时k≠M+1,说明回退节点还没有到达最后一个符号,则可以继续对该节点的兄节点进行扩展判定,跳至S4。
S6:如果k=1,跳至S7,否则k=k-1,计算子节点的半径。
如果此时k=1,说明在此初始球半径d范围内,已经找到一条完整的M个节点的路径,则跳至S7。
如果k≠1,执行k=k-1,即继续对此节点进行扩展,计算新的子节点的半径。
其中
表示子节点半径,随着译码深度的加深,球半径越来越小。
S7:保存该球半径中的全部节点{bk},跳至S4。
S8:译码输出。如此反复进行,当球半径内的所有节点都到达数据序列的最后一个符号,从筛选出的多条路径中找出距离最小的一组作为译码的最终输出结果。
实施例二
请参考图11,本实施例提供了一种基于重叠复用的译码装置,包括获取模块701和译码模块703。
获取模块701用于获取携带有输入信息的数字信号。接收端根据复调制包络波形得到携带有输入信息的数字信号。复调制包络波形为调制过程中得到的携带有原始信号的波形,其在调制端被发射出来,由解调端接收。
译码模块703用于基于球译码算法对数字信号在相应域内进行译码,得到最佳译码路径,以进行判决输出。其中,相应域包括时域、空域、频域、码域、混合域等,其由重叠复用技术中采用的域确定。
在重叠复用调制解调技术中,常用的检测算法有:最大似然算法(ML,MaximumLikelihood)、迫零检测算法(ZF,Zero Forcing)、最小均方误差算法(MMSE,Minimum MeanSquare Error)、球型译码算法(SD,Sphere Decoder)等。ML为最优算法但缺点是复杂度呈指数增长无法实用化;ZF检测算法具有最低的复杂度,但是误码率较高;MMSE算法也有较高的误码率;球译码算法是一种性能接近于ML算法但复杂度低的检测算法。它的基本思想是以接受矢量Y为球心,预先设定一个搜索半径C,通过对球内点的循环搜索不断减小搜索半径,最终找到最具可能性的发送向量。
下面对球译码算法进行介绍:
球译码的思想是减少搜索的格点数,仅搜索在以接收矢量为球心的一个球体内的所有格点。如果在这个搜索球内存在格点,易知最近格点必然在该球内,那么球外的节点都可以不用再搜索,需要搜索的格点数大大减少了,搜索的点少了,自然复杂度也就下降了。球译码是一种ML算法,最终可以得到最优的最大似然解,球译码算法复杂度与信噪比有关系。
假设发送端发送数据序列b∈U
M*1进入信道,U为一有限字符集。接收到的信号y可表示为y=Hb,其中y∈U
M*1是接收向量,H∈U
N*M是信道矩阵,H在接收端是已知的,球译码的目的就是在接收端找到一组码序列
使其满足
且满足||y-Hb||
2≤d
2,d为球译码半径。
球译码理论推导过程如下:
(1)对信道矩阵H进行分解
常用的分解包括Cholesky(乔里斯基)分解和QR分解。当然,在其他实施例中,也可以采用其他可以达到同样目的分解方法。
Cholesky分解是将H分解为H=LTL,其中L是M位的非奇异上三角矩阵;QR分解是将H分解为H=QR,Q是酉矩阵,R是上三角矩阵。
本实施例中,采用QR分解法,将H分解为H=QR,如果H的大小表示为N×M(N≥M),那么经过QR分解后,R是M×M上三角矩阵,Q=[Q1Q2]是N×N的正交矩阵,矩阵Q1和Q2分别代表Q的前M列和后N-M列,因此H也可以写成:
(2)寻找球体内格点
将(1)中经过QR分解的H矩阵带入关系式||y-Hb||2≤d2中得到
推广到K时,
其中d为初始设定的球译码半径,d'为随着译码深度的加深逐渐缩小的子半径,b为球内格点。k为节点索引,由于从后向前译码,k=1时,表示最后一个译码节点。经过反复的寻找球内格点,确定最终的译码路径。
由OvXDM的码树图(如图8所示)可知,每一个父节点有两个子节点(分别对应输入信息为1和-1),码树图的第i级一共有2i个节点,最终高度为n的树中总共含有2n+1-1个节点。在图8中,第0级的节点被称为根节点,第n级的节点被称为叶子节点,除第n级的叶子节点外,每一级的节点都有两个子节点,除根节点外,每个节点都有一个父节点。从根节点到某个叶子节点的完整路径,都对应着一组判决结果。球译码算法也就是在码树图这个“树”中,搜索一条度量最小的从“树根”到“叶子”的路径。
OvXDM球译码的思想就是以输入信息为中心,在半径为d的n维超球内寻找最接近球心的位置,从而实现译码。首先根据信噪比设定球半径,从根节点出发,通过球半径对节点进行扩展,然后对扩展后的节点继续扩展,直至无法找到球半径内的子节点,此时对其相应的兄节点进行扩展,如果兄节点也没有在球半径内的子节点,则退回至父节点,对父节点的兄弟节点进行扩展,直到回退到根节点,仍然无法找到至少一条根节点到叶子节点的完整路径,重新计算球半径,将球半径适量的增大;如此反复进行,直至找完球半径内的所有路径,并至少找到了一条根节点到叶子节点的完整路径,此时结束译码,从最终筛选出的多条路径中选出距离最小的一条路径作为最终的译码输出结果,如附图9所示。
本实施中假设发送信息序列为x,信息长度L=10,重叠次数K=5,以矩形波为复用波形,其复用波形系数表示为h=[1,1,1,1,1],对其进行K次重叠编码,对应的信道矩阵可表示为H,其大小为(L+K-1)×L。发送端对信息序列进行编码,经过信道传输,接收端收到信号后,经过一系列信号处理,最终得到待译码的序列为y,长度为L。
如图10所示,OvXDM的球译码过程如下:
S1:对信道矩阵H进行QR分解
对信道矩阵H进行QR分解,表示为H=QR,如果H的大小表示为N×M(N≥M),那么经过QR分解后,R是M×M上三角矩阵,Q=[Q
1Q
2]是N×N的正交矩阵,矩阵Q
1和Q
2分别代表Q的前M列和后N-M列,因此H也可以写成
本实施例中N=L+K-1=14,M=L=10。
S2:设定初始球译码半径d,令k=M。
根据公式d2=aNδ2设定球半径大小,球半径的大小与数据长度N和噪声方差δ2有关,α为半径系数,可根据实际情况对球半径大小适当调整,是经验值。
由OvXDM的Trellis图可知,节点由原点扩展最后还会回归到原点,本实施例中,采用从后向前的顺序译码,每一个节点经过扩展,有两个到达节点,如果称其中一个节点为子节点的话,那么对应的另一个节点称为其兄节点,对应的扩展前的节点为其父节点。
需要说明的是,球译码半径太大,球体内包含的点太多,搜索复杂度成指数形式增长;球译码半径太小,就可能在球体内不包含任何格点,导致算法在增大半径之后进行重新搜索,导致搜索复杂度急剧上升。所以,需要合理地设置球译码半径。
S3:计算zk|k+1和dk'2,确定bk的范围
由上述球译码理论推导过程可知,
k=M时,z
M=Q
1 *y,其中Q
1是S1中QR分解得到的,y是待译码序列;
d为S2中设置的初始球半径,当K≠M时,随着译码深度的加深,球半径逐渐缩小,将d'称为子半径。
S4:选取一个bk,如果为空,跳至S5;否则,跳至S6。
在球半径内选取一个节点bk,对其进行扩展,如果扩展后的节点不在球半径内,那么退回到该节点的父节点,进行步骤S5;如果扩展后的节点在该球半径内,那么继续对该节点进行扩展,进行步骤S6。
S5:k=k+1返回父节点,如果k=M+1,且{bk}为空,跳至S2;如果{bk}不为空,结束;否则跳至S4。
如果此时k=M+1且球半径内不包含任何节点,说明初始选择的球半径d过小,那么跳至S2重新设定球半径,可修改系数α适当的将球半径扩大,比如将球半径扩展为原先的1.5倍大。如果球半径内包含节点,说明此半径下可找到可能的译码节点路径,则译码过程结束。
如果此时k≠M+1,说明回退节点还没有到达最后一个符号,则可以继续对该节点的兄节点进行扩展判定,跳至S4。
S6:如果k=1,跳至S7,否则k=k-1,计算子节点的半径。
如果此时k=1,说明在此初始球半径d范围内,已经找到一条完整的M个节点的路径,则跳至S7。
如果k≠1,执行k=k-1,即继续对此节点进行扩展,计算新的子节点的半径。
其中
表示子节点半径,随着译码深度的加深,球半径越来越小。
S7:保存该球半径中的全部节点{bk},跳至S4。
S8:译码输出。如此反复进行,当球半径内的所有节点都到达输入信息的最后一个符号,从筛选出的多条路径中找出距离最小的一组作为译码的最终输出结果。
当然,本实施例提供的译码装置还可以包括预处理模块702,用于根据获取的数字信号进行预处理。预处理包括同步处理、信道估计均衡处理、数字化处理、切割处理中的一种或多种。译码模块703用于根据预处理后的信号进行译码。
具体的,预处理可以采用现有技术中的任意一种可行的方式,本实施例不再对其进行赘述。
实施例三
本实施例提供了一种基于重叠复用的调制解调方法,包括调制步骤和解调步骤。本实施例中,主要以基于重叠时分复用的调制解调进行说明。
如图12所示,调制步骤包括下面子步骤:
步骤2.1:根据设计参数生成在时域内的初始包络波形h(t)。
在生成初始包络波形时,可以通过用户输入设计参数,以实现在实际系统中根据系统性能指标灵活配置。
在某些实施例中,当初始包络波形的旁瓣衰减已经确定时,设计参数包括初始包络波形的窗长度L,例如当初始包络波形为巴特莱特包络波形时。
在某些实施例中,设计参数包括初始包络波形的窗长度L和旁瓣衰减r,例如当初始包络波形为切比雪夫包络波形时。
当然,当初始包络波形为其他形式时,可以根据相应初始包络波形的特点确定设计参数。
步骤2.2:根据重叠复用次数K将初始包络波形在相应域(本实施例中为时域)内按预定的移位间隔进行移位,以得到各固定间隔的移位包络波形h(t-i*△T)。
其中,移位间隔为时间间隔△T,时间间隔△T为:△T=L/K。此时,信号的符号宽度即为△T。
另外,还需要保证△T不小于系统采样率的倒数。
i的取值与输入符号长度N有关,且i取0到N-1的整数。例如,当N=8时,i取0至7的整数。
步骤2.3:将输入的信号数字序列转换成正负符号表示的信号符号序列。
具体的,将输入的数字信号序列中的0转换为+A,1转换为-A,A取值为非0任意数,以得到正负符号序列。例如,取A为1时,将输入的{0,1}比特序列经过BPSK(Binary PhaseShift Keying,移相键控)调制转换成{+1、-1}符号序列。
步骤2.4:将转换后的信号符号序列xi(本实施例中xi={+1+1-1-1-1+1-1+1})与各固定间隔的移位包络波形h(t-i*△T)相乘,以得到各调制包络波形xi h(t-i*△T)。
步骤2.5:将各调制包络波形xi h(t-i*△T)在相应域(本实施例中为时域)上进行叠加,以得到携带输入信号序列的复调制包络波形,即发送的信号。
发送的信号可以如下表示:
步骤2.6:将得到的复调制包络波形作为发送信号发射出去。
故,本实施例中,A取值为1时,叠加后的输出符号(输出的信号符号序列)即为:s(t)={+1+2+1-1-3-1-1+1}。
请参考图13,为K路波形复用的原理示意图,其呈平行四边形形状。其中,每一行表示一个所要发送的符号xi与相应时刻的包络波形h(t-i*△T)相乘后得到的待发送信号波形xih(t-i*△T)。a0~ak-1表示对每个窗函数波形(包络波形)进行K次分段得到的每部分的系数值,具体为关于幅度值的系数。
由于将输入的数字信号序列转换成正负符号序列时,将输入的数字信号序列中的0,1转换为±A,A取值为非0任意数以得到正负符号序列。例如,A取值为1时,将输入的{0,1}比特序列经过BPSK调制转换成{+1、-1}符号序列,以得到正负符号序列。所以图12所示即为K路波形的符号叠加过程原理示意图。图14叠加过程中,第1行左边3个数表示第1个输入符号+1,第2行左边3个数表示第2个输入符号+1,第3行左边3个数表示第3个输入符号-1,第1行中间3个数表示第4个输入符号-1,第2行中间3个数表示第5个输入符号-1,第3行中间3个数表示第6个输入符号+1,第1行右边3个数表示第7个输入符号-1,第2行右边3个数表示第8个输入符号+1。因此,三个波形叠加后,得到的输出符号为{+1+2+1-1-3-1-1+1}。
当然,如果输入符号的长度为其他数值时,可以按照图13和图14所示的方式进行叠加,以得到输出符号。
本实施例中,解调步骤包括:接收复调制包络波形;根据复调制包络波形获取携带有输入信息的数字信号;基于球译码算法对数字信号在相应域内进行译码,得到最佳译码路径,以进行判决输出。
解调步骤中的译码方法采用上述实施例一提供的译码方法,此处不再对其进行赘述。
实施例四
请参考图3,基于上述实施例三提供的基于重叠复用的调制解调方法,本实施例相应提供了一种基于重叠复用的调制解调系统,包括发射机和接收机。
发射机包括调制装置和发射装置,请结合参考图15,调制装置包括波形生成模块801、移位模块802、调制模块803、乘法模块804和叠加模块805。
波形生成模块801用于生成初始包络波形。本实施例中,主要以基于重叠时分复用的调制解调进行说明。其根据设计参数生成在时域内的初始包络波形h(t)。
在生成初始包络波形时,可以通过用户输入设计参数,以实现在实际系统中根据系统性能指标灵活配置。
在某些实施例中,当初始包络波形的旁瓣衰减已经确定时,设计参数包括初始包络波形的窗长度L,例如当初始包络波形为巴特莱特包络波形时。
在某些实施例中,设计参数包括初始包络波形的窗长度L和旁瓣衰减r,例如当初始包络波形为切比雪夫包络波形时。
当然,当初始包络波形为其他形式时,可以根据相应初始包络波形的特点确定设计参数。
移位模块802用于根据重叠复用次数将初始包络波形在相应域(本实施例中为时域)内按移位间隔进行移位,以得到各固定间隔的移位包络波形h(t-i*△T)。
其中,移位间隔为时间间隔△T,时间间隔△T为:△T=L/K。此时,信号的符号宽度即为△T。
另外,还需要保证△T不小于系统采样率的倒数。
i的取值与输入符号长度N有关,且i取0到N-1的整数。例如,当N=8时,i取0至7的整数。
调制模块803用于将输入的信号数字序列转换成正负符号表示的信号符号序列。
具体的,将输入的数字信号序列中的0转换为+A,1转换为-A,A取值为非0任意数,以得到正负符号序列。例如,取A为1时,将输入的{0,1}比特序列经过BPSK(Binary PhaseShift Keying,移相键控)调制转换成{+1、-1}符号序列。
乘法模块804用于将信号符号序列xi与各固定间隔的移位包络波形h(t-i*△T)相乘,以得到各调制包络波形xi h(t-i*△T)。
叠加模块805用于将各调制包络波形xi h(t-i*△T)在相应域(本实施例中为时域)上进行叠加,以得到携带输入信号序列的复调制包络波形,即发送的信号。
发送的信号可以如下表示:
发射装置用于将复调制包络波形作为发送信号发射出去。
接收机包括用于接收复调制包络波形的接收装置和上述实施例二提供的任意一种基于重叠复用的译码装置,本实施不再对其进行赘述。
本申请实施例提供的基于重叠复用的译码方法、装置及调制解调方法和系统,基于球译码算法对数字信号在相应域内进行译码,得到最佳译码路径,以进行判决输出。基于球译码算法进行译码,简化了译码过程,节省了系统资源,降低了译码复杂度,同时提高译码输出的实时性并保证了系统的性能。从而实现了随着重叠复用次数的增加,译码复杂度较低。同时又能在保证较好的译码性能的前提下,使得重叠复用次数较大的译码方法能够实用化。
需要说明的是,本申请实施例提供的基于重叠复用的译码方法、装置及调制解调方法和系统可以应用到移动通信、卫星通信、微波视距通信、散射通信、大气层光通信、红外通信、水声通信等无线通信系统中,既可以应用于大容量无线传输,也可以应用于小容量的轻型无线电系统。
本领域技术人员可以理解,上述实施方式中各种方法的全部或部分步骤可以通过程序来控制相关硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器、随机存取存储器、磁盘或光盘等。
以上内容是结合具体的实施方式对本申请所作的进一步详细说明,不能认定本申请的具体实施只局限于这些说明。对于本申请所属技术领域的普通技术人员来说,在不脱离本申请发明构思的前提下,还可以做出若干简单推演或替换。