一种OvXDM系统的快速译码方法、装置及OvXDM系统与流程

文档序号:13577273阅读:227来源:国知局
一种OvXDM系统的快速译码方法、装置及OvXDM系统与流程

本申请涉及信号处理领域,尤其涉及一种ovxdm系统的快速译码方法、装置及ovxdm系统。



背景技术:

对于重叠复用系统——不管是重叠时分复用(ovtdm,overlappedtimedivisionmultiplexing)系统、重叠频分复用(ovfdm,overlappedfrequencydivisionmultiplexing)系统还是重叠码分复用(ovcdm,overlappedcodedivisionmultiplexing)系统,其传统的译码中,都需要不断访问格状图(trellis)中的节点,并为每一个节点设置两个存储器,一个用于存储到达该节点的相对最佳路径,一个用于存储到达该节点的相对最佳路径对应的测度。

对于ovtdm系统和ovfdm系统,由于译码过程中,需要对格状图中每个节点进行扩展,因此节点数决定了译码的复杂度,而对于重叠次数为k和调制维度为m的系统(m是大于等于2的整数),其对应的格状图中稳定状态的节点数为mk-1,因此译码复杂度会随着重叠次数k而指数增加。而在ovtdm系统和ovfdm系统中,系统的频谱效率为2k/符号,因此重叠次数k越大频谱效率越高。因此,一方面出于提高频谱效率的要求使得重叠次数k越大越好,另一方面出于降低译码复杂度的要求使得重叠次数k越小越好,特别地,当重叠次数k增加到一定值,例如k大于8后,译码复杂度急剧增加,现有的译码方法难以满足实时译码的要求,频谱效率与译码复杂度、译码效率形成了一对矛盾需求。

类似地,对于一个编码支路数为k’的m维调制ovcdm系统,其对应的格状图中稳定状态的节点数为mk’-1,因此译码复杂度会随着编码支路数k’而指数增加。而在ovcdm系统中,需要尽可能大的编码支路数k’,以使得频谱效率越高,但是同时译码复杂度会随k’的增加而急剧增加,因此频谱效率与译码复杂度、译码效率形成了一对矛盾需求。



技术实现要素:

为解决上述问题,本申请提供一种适用于ovxdm系统的快速译码方法、装置及ovxdm系统。

根据本申请的第一方面,本申请提供一种ovxdm系统的快速译码方法,包括以下步骤:

步骤一、分别计算前r个符号所潜在的全部路径与接收符号序列中前r个接收符号之间的测度;

步骤二、对计算得到的各测度进行排序,并存储其中较小的rn个测度及其各自对应的路径;

步骤三、对当前存储的最小测度对应的路径进行扩展,对扩展出的路径计算其与对应接收符号之间的瞬时测度,并将各瞬时测度与前一时刻对应的累加测度相加,得到当前时刻相加后的各扩展路径的累加测度;

步骤四、对所述各扩展路径的累加测度与存储的其余未进行扩展的rn-1个测度进行排序,并存储其中较小的rn个测度及其各自对应的路径;

步骤五、当步骤三中当前存储的最小测度对应的路径扩展后到达接收符号序列的深度时,则对扩展出的路径计算其与对应接收符号之间的瞬时测度,并比较各瞬时测度,将最小的瞬时测度对应的路径作为译码路径;否则重复步骤三和步骤四;

其中rn为一正整数,且小于ovxdm系统对应的格状图的节点数。

较优地,在步骤三中,将各瞬时测度与前一时刻对应的累加测度相加时,累加测度先与权重因子相乘后再与瞬时测度相加。

较优地,所述权重因子的取值为大于0且小于等于1。

根据本申请的第二方面,本申请提供一种适用于ovxdm系统的快速译码装置,包括:

第一计算模块,用于分别计算前r个符号所潜在的全部路径与接收符号序列中前r个接收符号之间的测度;

第一排序模块,用于对计算得到的各测度进行排序;

rn个距离存储器及对应的rn个路径存储器,分别用于存储第一排序模块中得到的较小的rn个测度及其各自对应的路径;

扩展模块,用于对当前存储的最小测度对应的路径进行扩展;

第二计算模块,用于对扩展模块扩展出的路径计算其与对应接收符号之间的瞬时测度,并将各瞬时测度与前一时刻对应的累加测度相加,得到当前时刻相加后的各扩展路径的累加测度;

第二排序模块,用于对第二计算模块中计算得到的所述各扩展路径的累加测度与存储的其余未进行扩展的rn-1个测度进行排序,其中较小的rn个测度及其各自对应的路径用于更新所述rn个距离存储器及对应的rn个路径存储器的值;

比较输出模块;当扩展模块对当前存储的最小测度对应的路径进行扩展到达接收符号序列的深度时,第二计算模块对扩展模块扩展出的路径计算其与对应接收符号之间的瞬时测度,比较输出模块比较各瞬时测度,并将最小的瞬时测度对应的路径作为译码路径;否则扩展模块、第二计算模块和第二排序模块重复进行工作;

其中rn为一正整数,且小于ovxdm系统对应的格状图的节点数。

较优地,所述ovxdm系统的快速译码装置还包括权重因子模块,用于在第二计算模块将各瞬时测度与前一时刻对应的累加测度相加时,先对前一时刻累加测度乘以权重因子,从而使得前一时刻累加测度先与权重因子相乘后再与瞬时测度相加。

较优地,所述权重因子模块的权重因子的取值为大于0且小于等于1。

根据本申请的第三方面,本申请提供一种ovxdm系统,包括上述的适用于高重ovxdm系统的快速译码装置。

本申请的有益效果是:

依上述实施的ovxdm系统的快速译码方法、装置及ovxdm系统,由于在译码过程中无需遍历所有状态节点及其扩展路径,只需通过测度排序选取最小测度对应的路径进行扩展,因此可以大幅度降低译码复杂度,并提高译码效率;

依上述实施的适用于ovxdm系统的快速译码方法、装置及ovxdm系统,由于在译码过程中引入权重因子,使得累加测度先与权重因子相乘后再与瞬时测度相加,因此使得随着路径深度的增加,逐渐弱化了距离当前节点较远的节点测度的参考,使得译码准确度更高。

附图说明

图1为本申请一实施例中的适用于ovxdm系统的快速译码方法的流程示意图;

图2为本申请一实施例中的适用于ovxdm系统的快速译码装置的结构示意图;

图3为本申请第一种实施例中ovfdm系统的发射端的结构示意图;

图4为本申请第一种实施例中ovfdm系统的数据编程叠加示意图;

图5(a)和(b)本申请第一种实施例中ovfdm系统的接收端的结构示意图;

图6为本申请第一种实施例中ovfdm系统的输入-输出的码树图;

图7为本申请第一种实施例中ovfdm系统的格状图扩展的示意图;

图8为本申请第一种实施例中ovfdm系统的译码的格状图;

图9为本申请第一种实施例中快速译码方法的译码示意图;

图10为本申请第二种实施例中ovtdm系统的发射端的结构示意图;

图11为本申请第二种实施例中ovtdm系统的数据编程叠加示意图;

图12(a)和(b)本申请第二种实施例中ovtdm系统的接收端的结构示意图;

图13为本申请第二种实施例中ovtdm系统的输入-输出的码树图;

图14为本申请第二种实施例中ovtdm系统的格状图扩展的示意图;

图15为本申请第二种实施例中ovtdm系统的译码的格状图;

图16为本申请第二种实施例中快速译码方法的译码示意图;

图17为本申请第三种实施例中ovcdm系统的结构示意图;

图18为本申请第三种实施例中ovcdm系统的编码器的结构示意图;

图19为本申请第三种实施例中ovcdm系统的编码矩阵的示意图;

图20为本申请第三种实施例中ovcdm系统的译码器的结构示意图;

图21为本申请第三种实施例中ovcdm系统对应的格状图;

图22为本申请第三种实施例中快速译码方法的译码示意图。

具体实施方式

下面通过具体实施方式结合附图对本申请作进一步详细说明。

维特比(viterbi)译码是卷积码中应用最广泛的方法,它的基本思想是遍历格状图(trellis)图中的所有路径,通过比较格状图状态转移过程中到达每个状态的多条支路与正确路径的距离,仅保留距离最小的路径,从而通过比较筛选得到正确路径的估计,实现译码。但是随着重叠重数k的增加,viterbi译码中的状态数m=2^k会指数增加,造成该算法计算复杂度急剧增加,难以满足实时译码的需求。

本申请的发明构思在于:从格状图的原点开始,不管编码约束长度k’或重叠次数k多大,对于一个m维调制的系统,它只有m个到达节点。分别计算到达这m个节点支路的瞬时测度,从m个到达节点的瞬时路径测度中选取最小者进行扩展,分别计算扩展的m条支路的瞬时测度,并记下这m个到达节点。每个时刻最多只保留rn条到达节点及其路径瞬时测度,每次均从具有最小瞬时路径测度的节点扩展,每扩展一次增加m-1个到达节点,存储其中较小的rn个测度及其各自对应的路径。。如此继续进行直到格状图的数据帧结束,其具有最小测度的到达节点的路径就是判决输出。总结起来,在译码过程中不遍历所有状态节点及其扩展路径,而是每次通过测度排序选取最小测度对应的路径进行扩展,因此可以大幅度降低译码复杂度,并提高译码效率。

本申请公开了一种适用于高重ovxdm系统的快速译码方法(以下简称快速译码方法),在本发明中,高重定义为叠加次数k大于等于8的系统。在一实施例中,高重ovxdm系统可为ovtdm系统、ovfdm系统、ovcdm系统、ovsdm系统或ovhdm系统,其中t、f、c、s、h分别代表了时间域、频率域、码分域、空间域、混合域。

如图1所示,本申请的快速译码方法包括步骤s01~s17。下面具体说明。

步骤s01、分别计算前r个符号所潜在的全部路径与接收符号序列中前r个接收符号之间的测度。在一较优的实施例中,r为logmrn的数值向下取整,其中m表示系统的维度,取值是大于等于2的整数。在一实施例中,本申请中的测度表示两个信号之间的距离,定义为:当p=2时即为欧氏距离,欧氏距离是两个信号之间的真实距离,能够真实的反应实际信号和理想信号之间的距离,在一实施例中,可选欧氏距离作为本申请的测度,本专利中欧氏距离定义为

步骤s03、对步骤s01中计算得到的各测度进行排序。

步骤s05、存储步骤s03中排序得到的其中较小的rn个测度及其各自对应的路径。其中rn为一正整数,且小于高重ovxdm系统对应的格状图的节点数,例如,在一较优实施例中,rn小于mk-1,其中m表示系统的维度,取值是大于等于2的整数。

步骤s07、对当前存储的最小测度对应的路径进行扩展。对于m维调制的ovtdm系统和ovfdm系统等,是对当前存储的最小测度对应的路径的最后一个节点进行m维扩展。

步骤s09、对扩展出的路径计算其与对应接收符号之间的瞬时测度。

步骤s11、将各瞬时测度与前一时刻对应的累加测度相加,得到当前时刻相加后的各扩展路径的累加测度。在一较优的实施例中,将各瞬时测度与前一时刻对应的累加测度相加时,前一时刻累加测度先与权重因子相乘后再与瞬时测度相加,这是为了使得随着路径深度的增加,逐渐弱化距离当前节点较远的节点测度的参考,使得译码准确度更高。在一较优实施例中,权重因子的取值为大于0且小于等于1。

步骤s13、对所述各扩展路径的累加测度与存储的其余未进行扩展的rn-1个测度进行排序。

步骤s15、存储其中较小的rn个测度及其各自对应的路径。

步骤s17、当步骤s07中对当前存储的最小测度对应的路径进行扩展后达到接收符号序列的深度时,则进行步骤s19、对扩展出的路径计算其与对应接收符号之间的瞬时测度,并比较各瞬时测度,将最小的测度对应的路径作为译码路径;否则重复步骤s07~s15。

如上所述,本申请在译码过程中,每次都只对当前存储的最小测度对应的路径进行扩展,并计算其对应的瞬时测度和累加测度,而没有遍历所有状态节点及其扩展路径,因此可以大幅度降低译码复杂度,并提高译码效率,其译码复杂度并不会像传统译码方案一样随着重叠复用次数k的增加而急剧增加,解决了频谱效率与译码复杂度、译码效率这一对矛盾需求。

相应地,本申请还提出一种适用于高重ovxdm系统的快速译码装置(以下简称快速译码装置),如图2所示,本申请的快速译码装置包括第一计算模块01、第一排序模块03、rn个距离存储器05、rn个路径存储器07、扩展模块09、第二计算模块11、第二排序模块13和比较输出模块15,在一较优实施例中,本申请的快速译码装置还可以包括权重因子模块17。

下面具体说明。

第一计算模块01用于分别计算前r个符号所潜在的全部路径与接收符号序列中前r个接收符号之间的测度。在一较优的实施例中,r为logmrn的数值向下取整,其中m表示系统的维度,取值是大于等于2的整数。

第一排序模块03用于对计算得到的各测度进行排序。

rn个距离存储器05及对应的rn个路径存储器07分别用于存储第一排序模块03中得到的较小的rn个测度及其各自对应的路径。在一较优实施例中,rn小于mk-1,其中m表示系统的维度,取值是大于等于2的整数。

扩展模块09用于对当前存储的测度中最小值对应的路径进行扩展。

第二计算模块11用于对扩展模块09扩展出的路径计算其与接收符号序列中对应接收符号之间的瞬时测度,并将各瞬时测度与前一时刻对应的累加测度相加,得到当前时刻相加后的各扩展路径的累加测度。在一较优实施例中,权重因子模块17用于在第二计算模块11将各瞬时测度与前一时刻对应的累加测度相加时,先对前一时刻累加测度乘以权重因子,从而使得前一时刻累加测度先与权重因子相乘后再与瞬时测度相加。引入权重因子模块17是为了使得随着路径深度的增加,逐渐弱化距离当前节点较远的节点测度的参考,使得译码准确度更高。在一较优实施例中,权重因子的取值为大于0且小于等于1。

第二排序模块13用于对第二计算模块11中计算得到的所述各扩展出的路径的累加测度与存储的其余未进行扩展的rn-1个测度进行排序,其中较小的rn个测度及其各自对应的路径用于更新所述rn个距离存储器05及对应的rn个路径存储器07的值。

当扩展模块09对当前存储的最小测度对应的路径进行扩展达到接收符号序列的深度时,第二计算模块11对扩展模块09扩展出的路径计算其与对应接收符号之间的瞬时测度,比较输出模块15比较各瞬时测度,并将最小的瞬时测度对应的路径作为译码路径;否则扩展模块09、第二计算模块11和第二排序模块13重复进行工作。

本申请还公开了一种ovxdm系统,其包括上述的适用于ovxdm系统的快速译码装置,在一实施例中,ovxdm系统可以为ovtdm系统、ovfdm系统、ovcdm、ovsdm或ovhdm系统。

下面再通过若干个实施例对本申请作进一步的说明。

实施例一

本实施例不妨以ovfdm系统为例进行说明。

如图3所示,为ovfdm系统发送端,其首先将频域信号按照一定的规律进行编码,然后将频域信号转换为时域信号即进行傅氏反变换,之后才将信号发送出去。具体地,先根据设计参数生成一个初始包络波形;然后根据重叠复用次数将上述初始包络波形在频域上按预定的频谱间隔进行移位,得到各子载波包络波形;再将输入数据序列与各自对应的子载波包络波形相乘,得到各子载波的调制包络波形;再将各子载波的调制包络波形在频域上进行叠加,得到频域上的复调制包络波形,最后将上述频域上的复调制包络波形变换为时域上的复调制包络波形以发送,其中频谱间隔为子载波频谱间隔△b,其中子载波频谱间隔△b=b/k,b为所述初始包络波形的带宽,k为重叠复用次数。数据序列编码叠加过程如图4所示。如图5所示为ovfdm系统接收端,其通过天线收到的信号是时域的信号,如果要对接收信号译码,首先需要将时域信号转换为频域信号,即进行傅氏变换之后才能处理。具体地,先对接收信号在时间域形成符号同步;然后对各个符号时间区间的接收信号进行取样、量化,使它变成接收数字信号序列;将时域信号转换为频域信号,再对该频率域信号以频谱间隔△b分段,形成实际接收信号分段频谱;再形成接收信号频谱与发送的数据符号序列之间的一一对应关系,最后根据此种一一对应的关系,检测数据符号序列。ovfdm系统中的傅氏反变换和傅氏变换都涉及采样点数的设置,两者的采样点数应保持一致,且取值为2n,n为正整数。

一个重叠次数为k的2维调制ovfdm系统,即m=2,其格状图的节点数为2k-1,传统译码算法中需要的距离存储器为2k-1个,路径存储器也为2k-1个,如图6所示,其为一个接收信号长度n=4,重叠次数k=3时系统对应的输入-输出关系码树图,从图中可以看出,码树图的状态数为2k-1=4,相应地,如图7所示,对应的格状图的节点数也为4,当译码状态充分展开时,每个译码步骤共有8条路径。本实施例中,选取距离存储器05为rn个,路径存储器07也为rn个,其中rn小于2k-1,从而降低译码的复杂度,在一实施例中,令r为log2rn的数值向下取整。对于一个二维调制的ovfdm系统,从格状图的原点开始,不管重叠重数k多大,它只有两个到达节点。分别计算到达这两个节点支路的瞬时测度,从两个到达节点的瞬时路径测度中选取最小者进行扩展,分别计算扩展两支路的瞬时测度,并记下这两个到达节点。每个时刻最多只保留rn条到达节点及其路径瞬时测度,每次均从具有最小瞬时路径测度的节点扩展,每扩展一次增加一个到达节点,具有较大瞬时路径测度的路径及其测度全部抛弃。如此继续进行直至格状图的数据帧结束,其具有最小瞬时路径测度的到达节点的路径就是判决输出。下面详述译码步骤,本实施例中不妨令rn=2r

需要说明的是,在以下的实施例中使用k=3的低重叠进行说明,仅是为了使得阐述本发明的具体方案时更加清晰,本发明更为适用于高重叠次数的系统,例如k=8等,并随着重叠次数的提升,其优化的效果更为明显。

(1)确定初始前r个符号路径和对应测度。

长度为r的符号序列表示为对于2维调制,共有2r种可能组合信息,组合形式为因此可得到2r*r维的矩阵,表示为msg(2r*r),其中每一行表示一组长度为r的符号序列。分别计算每组符号序列与前r个接收符号的瞬时测度,定义为:其中vr为前r个接收符号,xr,j为ovfdm系统的窗函数,为msg(2r*r)中第i行中第(r-j)个符号。此时译码到达第r个节点,包含2r条译码路径u和2r个瞬时测度d,每条译码路径的节点深度均为r。将瞬时测度和对应的译码路径分别存入距离存储器05和路径存储器07。

(2)寻找测度最小值和最大值。

将(1)中得到的2r个瞬时测度依次排序,分别找出测度最小和最大对应的索引idxmin、idxmax,测度最小索引对应的瞬时测度为将测度最小对应的索引节点深度加1,节点深度变为r+1。

(3)扩展节点

对测度最小索引对应的译码路径进行扩展,可扩展为1和-1两条支路,即译码路径变为扩展后的译码路径共有2r+1,但是我们仅需要保留2r条路径,因此将(2)中找到的最大测度索引对应的译码路径删除,将扩展为1的译码支路存储在索引为idxmax的存储器中(也可以用-1支路替代),-1支路继续存储在索引为idxmin的存储器中。此时译码路径中只有idxmin、idxmax索引对应的节点深度为r+1,其余索引的节点深度仍为r。节点状态转移参考附图8。

(4)计算累加测度

将扩展后的两条路径分别与接收到的符号求瞬时测度,计算公式同(2)中计算测度的公式,得到两条路径的测度分别为d'r+1、d”r+1,将其分别与r节点对应的瞬时测度相加,得到累加测度。在相加过程,可以引入权重因子alpha,取值为大于0且小于等于1的数,具体数值视系统需求而定,这样做的目的是随着节点深度的增加,逐渐弱化距离当前节点较远的节点测度参考,相加过程可表示为:得到的累加测度分别存储在(3)中对应的idxmin、idxmax存储器中。

对剩余的符号序列同样采用上述(2)~(4)的方式,进行筛选扩展,直到节点深度到达符号序列深度n,比较最后一次符号扩展后的瞬时测度,较小者即为最终输出的译码路径。

从以上步骤中可以看出,本专利中提出的快速译码方法每次仅需对rn个节点进行扩展,而经典方法中需要对2k-1次个节点进行扩展,当k较大时,rn可以取值相对较小,并且满足rn<2k-1,因此对于长度为n的译码序列,译码复杂度大幅降低。

下面再以一个实际的例子说明本实施例。

由于重叠次数k较大时,其译码复杂度较高,同时若数据帧长度n过大难以用文字完整的表述,因此本实施例选取稍小的k值和n值为例,旨在描述快速译码的具体实施方案。

以重叠次数k=5的二维调制的ovfdm系统为例,其采用矩形复用窗h={11111}进行调制。需要说明的是,本申请的快速译码文法,适用于各种复用窗函数。由于重叠次数k=5,因此当格状图完全展开后共有2k-1=16个节点,本例子选取rn=4,因此r为log2rn的数值向下取整,即为2,需要说明的是,本申请的快速译码方法中,rn的取值只要小于2k-1即可降低译码复杂度。

不妨令发送码序列为xi={+1-1-1+1-1+1+1-1+1-1},经过ovfdm系统调制编码后,接收端经过同步、信道估计均衡处理,转换为频域信号后得到的接收序列为yi={+10-10-1-1+1+1+1+1}。按照上述快速译码方法对接收到的序列yi进行译码,其译码路径如图9所示,最终得到了正确的的译码结果。

本实施例通过采用一种快速译码方法,在译码过程中对格状图中访问节点进行筛选,结合权重因子计算累加测度,选取测度最小的路径进行扩展,最终筛选出最佳译码路径,从而实现了在高重ovfdm系统译码过程中,使用此方法后降低了系统设计复杂度和计算量,且同时具有较低的误码率。另外,普通ovfdm系统中,在计算累加测度时,将当前节点之前的测度和瞬时测度直接相加,随着译码深度的增加,累加测度越来越大,对距离存储器有较高要求。但实施上,对于一个重叠次数为k的ovfdm系统中,符号的相互重叠仅存在于当前符号相关联的前k-1个符号和后k-1个符号中,超过这个范围后即对当前符号的叠加就不会产生影响,因此其测度对当前节点的路径判断所占权重也就越来越小。基于这个原因,在计算累加测度时,通过瞬时测度和前一节点测度的权重结果相加,随着译码深度的增加,累加测度始终保持在一定范围内,对距离存储器要求降低,且最终的译码路径更具可靠性。

需要说明的是,本实施例中,由于每次只对测度最小的路径进行扩展,即每次只对一条路径进行扩展,因此每个时刻存储的各条路径的深度不同,因此信噪比较低时在筛选扩展的过程中节点和路径会出现反复的回退。另外,由于待译码的数据长度较长,且随着译码深度的加深,累加距离越来越大,系统若将所有数据全部译码完成后再进行译码输出,较消耗系统资源,因此对于路径的存储容量和距离的存储采取较优的处理方法。一般选取路径存储长度为4k~5k,此时如果路径存储器已经存满而译码判决输出还未进行可强行判决输出,将具有相同路径的初始节点先进行输出。另外,随着译码深度的加深,累加测度也会越来越大,可将累加测度存储为相对测度,即定义一个参考测度,其取值根据不同的系统而定,距离存储记录的是每条路径的第二测度相对于参考测度的相对值,在进行最佳路径的筛选时通过相对测度进行比较。

实施例二

本实施例不妨以ovtdm系统为例进行说明。

如图10所示,为ovtdm系统发送端,先根据设计参数生成一个时域内的初始包络波形;然后根据重叠复用次数将上述初始包络波形在时域上按预定的时间间隔进行移位,得到各个时刻的偏移包络波形;再将输入数据序列与各个时刻的偏移包络波形相乘,得到各个时刻的调制包络波形;再将各个时刻的调制包络波形在时域上进行叠加,得到时域上的复调制包络波形以发送,其中时间间隔为△t,△t=t/k,t为所述初始包络波形的时域宽度,k为重叠复用次数。数据序列编码叠加过程如图11所示。如图12所示,为ovtdm系统接收端,其对每一帧内的接收信号形成接收数字信号序列,再对形成的接收数字信号序列实施检测,以得到所述帧长内的调制在全部符号上的调制数据的判决。

一个重叠次数为k的2维调制ovtdm系统,即m=2,其格状图的节点数为2k-1,传统译码算法中需要的距离存储器为2k-1个,路径存储器也为2k-1个,如图13所示,其为一个接收信号长度n=4,重叠次数k=3时系统对应输入-输出的码树图,从图中可以看出,码树图的状态数为2k-1=4,相应地,如图14所示,对应的格状图的节点数也为4,当译码状态充分展开时,每个译码步骤共有8条路径。本实施例中,选取距离存储器05为rn个,路径存储器07也为rn个,其中rn小于2k-1,从而降低译码的复杂度,在一实施例中,令r为log2rn的数值向下取整。对于一个二维调制的ovtdm系统,从格状图的原点开始,不管重叠重数k多大,它只有两个到达节点。分别计算到达这两个节点支路的瞬时测度,从两个到达节点的瞬时路径测度中选取最小者进行扩展,分别计算扩展两支路的瞬时测度,并记下这两个到达节点。每个时刻最多只保留rn条到达节点及其路径瞬时测度,每次均从具有最小瞬时路径测度的节点扩展,每扩展一次增加一个到达节点,具有较大瞬时路径测度的路径及其测度全部抛弃。如此继续进行直至格状图的数据帧结束,其具有最小瞬时路径测度的到达节点的路径就是判决输出。下面详述译码步骤,本实施例中不妨令rn=2r

(1)确定初始前r个符号路径和对应测度。

长度为r的符号序列表示为对于2维调制,共有2r种可能组合信息,组合形式为因此可得到2r*r维的矩阵,表示为msg(2r*r),其中每一行表示一组长度为r的符号序列。分别计算每组符号序列与前r个接收符号的瞬时测度,定义为:其中vr为前r个接收符号,xr,j为ovtdm系统的窗函数,为msg(2r*r)中第i行中第(r-j)个符号。此时译码到达第r个节点,包含2r条译码路径u和2r个瞬时测度d,每条译码路径的节点深度均为r。将瞬时测度和对应的译码路径分别存入距离存储器05和路径存储器07。

(2)寻找测度最小值和最大值。

将(1)中得到的2r个瞬时测度依次排序,分别找出测度最小和最大对应的索引idxmin、idxmax,测度最小索引对应的瞬时测度为将测度最小对应的索引节点深度加1,节点深度变为r+1。

(3)扩展节点

对测度最小索引对应的译码路径进行扩展,可扩展为1和-1两条支路,即译码路径变为扩展后的译码路径共有2r+1,但是我们仅需要保留2r条路径,因此将(2)中找到的最大测度索引对应的译码路径删除,将扩展为1的译码支路存储在索引为idxmax的存储器中(也可以用-1支路替代),-1支路继续存储在索引为idxmin的存储器中。此时译码路径中只有idxmin、idxmax索引对应的节点深度为r+1,其余索引的节点深度仍为r。节点状态转移参考附图15。

(4)计算累加测度

将扩展后的两条路径分别与接收到的符号求瞬时测度,计算公式同(2)中计算测度的公式,得到两条路径的测度分别为d'r+1、d”r+1,将其分别与r节点对应的瞬时测度相加,得到累加测度。在相加过程,可以引入权重因子alpha,取值为0~1的数,具体数值视系统需求而定,这样做的目的是随着节点深度的增加,逐渐弱化距离当前节点较远的节点测度参考,相加过程可表示为:得到的累加测度分别存储在(3)中对应的idxmin、idxmax存储器中。

对剩余的符号序列同样采用上述(2)~(4)的方式,进行筛选扩展,直到节点深度到达符号序列深度n,比较最后一次符号扩展后的瞬时测度,较小者即为最终输出的译码路径。

从以上步骤中可以看出,本专利中提出的快速译码方法每次仅需对rn个节点进行扩展,而经典方法中需要对2k-1次个节点进行扩展,当k较大时,rn可以取值相对较小,并且满足rn<2k-1,因此对于长度为n的译码序列,译码复杂度大幅降低。

下面再以一个实际的例子说明本实施例。

由于重叠次数k较大时,其译码复杂度较高,同时若数据帧长度n过大难以用具体实施例表述,因此本实施例选取稍小的k值和n值为例,旨在描述快速译码的具体实施方案。

以重叠次数k=5的二维调制的ovtdm系统为例,其采用矩形复用窗h={11111}进行调制。需要说明的是,本申请的快速译码文法,适用于各种复用窗函数。由于重叠次数k=5,因此当格状图完全展开后共有2k-1=16个节点,本例子选取rn=4,因此r为log2rn的数值向下取整,即为2,需要说明的是,本申请的快速译码方法中,rn的取值只要小于2k-1即可降低译码复杂度。

不妨令发送码序列为xi={+1-1-1+1-1+1+1-1+1-1},经过ovtdm系统调制编码后,接收端经过同步、信道估计均衡处理后得到的接收序列为yi={+10-10-1-1+1+1+1+1}。按照上述快速译码方法对接收到的序列yi进行译码,其译码路径如图16所示,最终得到了正确的的译码结果。

本实施例通过采用一种快速译码方法,在译码过程中对格状图中访问节点进行筛选,结合权重因子计算累加测度,选取测度最小的路径进行扩展,最终筛选出最佳译码路径,从而实现了在高重ovtdm系统译码过程中,使用此方法后降低了系统设计复杂度和计算量,且同时具有较低的误码率。另外,普通ovtdm系统中,在计算累加测度时,将当前节点之前的测度和瞬时测度直接相加,随着译码深度的增加,累加测度越来越大,对距离存储器有较高要求。但实施上,对于一个重叠次数为k的ovtdm系统中,符号的相互重叠仅存在于当前符号相关联的前k-1个符号和后k-1个符号中,超过这个范围后即对当前符号的叠加就不会产生影响,因此其测度对当前节点的路径判断所占权重也就越来越小。基于这个原因,在计算累加测度时,通过瞬时测度和前一节点测度的权重结果相加,随着译码深度的增加,累加测度始终保持在一定范围内,对距离存储器要求降低,且最终的译码路径更具可靠性。

需要说明的是,本实施例中,由于每次只对测度最小的路径进行扩展,即每次只对一条路径进行扩展,因此每个时刻存储的各条路径的深度不同,因此信噪比较低时在筛选扩展的过程中节点和路径会出现反复的回退。另外,由于待译码的数据长度较长,且随着译码深度的加深,累加距离越来越大,系统若将所有数据全部译码完成后再进行译码输出,较消耗系统资源,因此对于路径的存储容量和距离的存储采取较优的处理方法。一般选取路径存储长度为4k~5k,此时如果路径存储器已经存满而译码判决输出还未进行可强行判决输出,将具有相同路径的初始节点先进行输出。另外,随着译码深度的加深,累加测度也会越来越大,可将累加测度存储为相对测度,即定义一个参考测度,其取值根据不同的系统而定,距离存储记录的是每条路径的第二测度相对于参考测度的相对值,在进行最佳路径的筛选时通过相对测度进行比较。

实施例三

本实施例不妨以ovcdm系统为例进行说明。ovcdm系统的重叠码分复用的核心是重叠和复用,目的是提高通信系统的频谱效率。ovcdm系统将卷积编码系数推广到复数域的广义卷积编码模型,通过符号重叠产生约束关系,主要参数包括编码支路数k’路和编码约束长度l,其系统结构图如图17所示,对应的编码器结构如附图18所示。ovcdm系统的关键是编码矩阵,即卷积扩展系数,要求其满足线性关系,此时输入序列与输出序列一一对应,因此理论上可以无误码的解码,一般通过计算机搜索所有测度较大的矩阵作为编码矩阵,其编码矩阵排列如附图19所示。

为了说明本实施例的快速译码方法,先给出ovcdm系统的编码过程。

(1)将待发送数据经过串并转换成为k’路子数据流,第i路上的数据流记为ui=ui,0ui,1ui,2…。比如k’=2时,u0=u0,0u0,1u0,2…,u1=u1,0u1,1u1,2…,

(2)将每一路数据送入一个移位寄存器进行加权叠加,第i路的加权系数为bi=bi,0bi,1bi,2…,其为一复向量。

(3)把各路信号相加输出,得到最终ovcdm编码器的输出为c=c0c1c2…,

ovcdm的码率为其中n为子数据流长度。当n很长时,由移位寄存器拖尾所带来的码率损失可以忽略不计,于是有rovcdm≈k。

传统的二元域卷积编码模型码率一般小于1,会导致频谱效率损失。而ovcdm的复数域的卷积编码码率等于1,单路的卷积编码扩展不会导致频谱效率损失,还会增加额外的编码增益。

接收端收到信号后,先对信号进行同步、信道估计、数字化处理,再对处理后的数据进行译码。译码算法的核心是通过计算接收信号与理想状态的测度,采用路径存储器和测度判决出最佳的译码路径,得到最终的检测序列,序列检测过程框图如附图20所示。

以上是现有技术中ovcdm系统的情况。本实施例中的快速译码方法,具体步骤如下。

不妨令ovcdm系统的编码支路数为k’路和编码约束长度l,编码输出矢量的维数为n,采用二维调制,因此码元为+1、-1。由于编码支路数为k’路和编码约束长度为l,则每个状态可到达的节点数m为2k’,共计包含2k’个状态s,因此所有状态可到达的节点数共为22k’。本实施例中,选取距离存储器05为rn个,路径存储器07也为rn个,其中rn小于2k’-1,从而降低译码的复杂度,在一实施例中,令r为log2rn的数值向下取整。

(1)初始状态:

令初始节点状态(l=0)的路径测度为d0,0=0。

(2)确定初始前r个符号路径和对应测度

长度为r的符号序列表示为对于2维调制,共有2r种可能组合信息,组合形式为因此可得到2r*r维的矩阵,表示为msg(2r*r),其中每一行表示一组长度为r的符号序列。分别计算每组符号序列与前r个接收符号的瞬时测度,定义为:其中vr为前r个接收符号,xr,j为ovcdm的编码矩阵,为msg(2r*r)中第i行中第(r-j)个符号。此时译码到达第r个节点,包含2r条译码路径u和2r个瞬时测度d,每条译码路径的节点深度均为r。将瞬时测度和对应的译码路径分别存入距离存储器05和路径存储器07。

(3)计算节点测度:

每个节点共计包括s个状态,对第l个节点求其测度,方法为计算全部m条从前一状态转移到此状态的理想信号符号与接收信号序列之间的测度ds,m(l,l+1),其表达式为

(4)计算累加测度:

将当前节点各个状态s的欧氏距离ds,m(l,l+1)与它们各自出发状态s'的测度ds',l-1相加,形成新的m个路径的累加欧氏距离。在相加过程,可以引入权重因子alpha,取值为0~1的数,具体数值视系统需求而定,这样做的目的是随着节点深度的增加,逐渐弱化距离当前节点较远的节点测度参考。

(5)路径筛选:

对累加的欧氏距离进行排序,选择累加欧氏距离最小的路径对其进行扩展,可扩展出m条支路,对这m条支路依次求当前节点测度,保留测度最小的路径,同时舍弃其余(m-1)条路径,此时存储器中共包含rn条路径及其对应的测度。

(6)最终路径确定:

重复步骤(3)-(5)直至译码结束,此时存储器中共保留了rn条路径及其对应的路径欧氏距离,欧氏距离最小的路径即为译码结果。

本实施例中,保留路径数rn决定了译码过程保留的信息,对于编码支路数为k’的ovcdm系统,舍弃的路径数量为22k’-rn,因此rn越小译码的复杂度越低。但rn不可能无限小,rn越小,译码性能损失越大,相同误码率条件下需要更高的信噪比。因此需要根据实际的系统及信道,选择合适的rn,在降低译码复杂度的同时,保证译码的性能损失较小。一般选择rn的值为大于等于2l(k’-4)且小于等于2l(k’-2),此时能够保证译码性能同时大幅降低译码复杂度。

下面再以一个实例进行说明。

由于编码支路数k'和编码约束长度l较大时,其译码复杂度较高,同时若数据帧长度n过大难以用具体实施例表述,因此本实施例选取稍小的k'、l值和n值为例,旨在描述快速译码的具体实施方案。

本案例以输入数据流为u={+1,-1,-1,-1,-1,+1,-1,+1,+1,-1,+1,-1,-1,-1,-1,+1},k’=2,l=2,rn=4,编码矩阵为例说明ovcdm系统译码过程,该参数设计下对应ovcdm系统对应的格状图如图21所示。

(1)编码过程

首先对于k’=2,将输入数据流u转换为两路,对应为:

u1={+1,-1,-1,-1,+1,+1,-1,-1}

u2={-1,-1,+1,+1,-1,-1,-1,+1}

每一路的卷积系数表示为:b0=[1j],b1=[j1],参照附图18编码结构和附图21的格状图,其编码输出为c={1-j,-2,-2,0,2-2j,0,-2,-2}。ovcdm系统的编码实现过程也可以采用其他方式,本申请的发明点在于译码过程而不在于编码过程。

(2)译码

经过信号同步、信道估计、数字化处理后,接收端得到信号序列,为方便说明,假定为理想状态,此时接收信号序列为c={1-j,-2,-2,0,2-2j,0,-2,-2},利用接收信号进行译码:

接收到的第一个符号为1-j,将其与理想的四个状态(1,1),(1,-1),(-1,1),(-1,-1)分别求测度,排序找出最小测度,其对应路径为(1,-1)。将四个测度及其对应的路径存入存储器中。

接着处理第2个符号-2,对测度最小的路径(1,-1)进行扩展,由当前状态可扩展出四条支路,分别为(1,-1,1,1)、(1,-1,1,-1)、(1,-1,-1,1)、(1,-1,-1,-1),将当前符号分别和这四条理想路径求测度,保留测度最小者对应的路径(1,-1,-1,-1),同时舍弃其余三条支路。此时路径存储器中存储的四条路径依次为(1,1),(1,-1,-1,-1),(-1,1),(-1,-1)。

后面的符号采用相同的方法,每次对测度最小的路径进行扩展,保留测度最小的,同时舍弃其余扩展的路径,直至到达最后一个符号,此时得到4条路径及其对应的测度,测度最小的路径对应的序列即为最终译码输出序列,为(1,-1,-1,-1,-1,1,-1,1,1,-1,1,-1,-1,-1,-1,1),译码结束。译码过程如图22所示。

本申请提出的快速译码方法及装置,除了应用在ovxdm系统中,也可广泛应用于实际移动通信系统中,如td-lte、td-scdma等系统,还可以广泛应用于卫星通信、微波视距通信、散射通信、大气层光通信、红外通信与水生通信等任何无线通信系统中。本申请的快速译码方法、装置及ovxdm系统,既可以应用于大容量无线传输,也可以应用于小容量的轻型无线电系统。

以上内容是结合具体的实施方式对本申请所作的进一步详细说明,不能认定本申请的具体实施只局限于这些说明。对于本申请所属技术领域的普通技术人员来说,在不脱离本申请发明构思的前提下,还可以做出若干简单推演或替换。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1