维特比译码方法、设备及存储介质技术

技术编号:20568606 阅读:18 留言:0更新日期:2019-03-14 10:39
本申请实施例提供一种维特比译码方法、设备及存储介质。在本申请实施例中,在对接收到的数据序列进行分段并行译码的基础上,进一步针对每一个分段形成的子序列,在每个时刻内对所有状态,并行计算每个时刻输出的序列片段在该时刻状态下的分支度量值,并对各子序列中在每个时刻输出的序列片段在该时刻状态下的分支度量值进行并行加比选,进而确定出各子序列的幸存路径;之后根据每个子序列的幸存路径,确定接收到的数据序列的译码结果。在本申请实施例中,在对接收到的数据序列进行维特比译码过程中,引入两次并行计算,可提高译码速率。

Viterbi Decoding Method, Equipment and Storage Media

The embodiment of this application provides a Viterbi decoding method, device and storage medium. In the embodiment of this application, on the basis of piecewise parallel decoding of the received data sequence, further for each sub-sequence formed by each sub-segment, the branching metric of the sequence segment output at each time in the state of that time is calculated in parallel for all States at each time, and the sequence segment output at each time in the state of that time is calculated for each sub-sequence. Then, the surviving paths of each subsequence are determined by parallel addition and comparison of the branch metrics, and the decoding results of the received data sequence are determined according to the surviving paths of each subsequence. In the present application embodiment, two parallel computations are introduced in the Viterbi decoding process of the received data sequence to improve the decoding rate.

【技术实现步骤摘要】
维特比译码方法、设备及存储介质
本申请涉及无线通信
,尤其涉及一种维特比译码方法、设备及存储介质。
技术介绍
卷积码自从问世以来,经过不断的发展,目前已经成为最流行的一种信道编码方式,广泛应用于各类无线通信系统中,例如WIFI,WIMAX,LTE等,使无线系统具有一定的纠错能力和抗干扰能力,可极大地避免码流传送中误码的发生,极大地提高了数据传输的可靠性。对于数据接收端在接收到卷积码时,需要采用一定的规则对卷积码进行译码,而维特比(Viterbi)译码由于其优良的译码性能与译码效率,自该算法提出以来即得到了广泛的应用。但是,现有的维特比译码器仍存在译码速率较慢的问题。
技术实现思路
本申请的多个方面提供一种维特比译码方法、设备及存储介质,用以提高译码速率。本申请实施例提供一种维特比译码方法,包括:将接收到的数据序列切分成N个子序列,其中相邻的两个子序列具有M个比特重叠,其中N为大于1的整数,M为正整数;在对所述N个子序列进行并行处理的过程中,针对第一子序列,以并行方式计算所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值;对所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值进行加比选,以得到所述第一子序列的幸存路径;根据所述N个子序列的幸存路径,确定所述数据序列的译码结果;其中,所述第一子序列为所述N个子序列中的任一子序列。本申请实施例还提供一种接收设备,包括:存储器、处理器和通信组件;所述通信组件,用于接收待译码的数据序列;所述存储器,用于存储计算机程序与所述数据序列;所述处理器,耦合至所述存储器,用于执行所述计算机程序以用于:将所述数据序列切分成N个子序列,其中相邻的两个子序列具有M个比特重叠,其中N为大于1的整数,M为正整数;在对所述N子序列进行并行处理的过程中,针对第一子序列,以并行方式计算所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值;对所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值进行加比选,以得到所述第一子序列的幸存路径;根据所述N个子序列的幸存路径,确定所述数据序列的译码结果;其中,所述第一子序列为所述N个子序列中的任一子序列。本申请实施例还提供一种存储有计算机指令的计算机可读存储介质,其特征在于,当所述计算机指令被一个或多个处理器执行时,致使所述一个或多个处理器执行上述维特比译码方法中的步骤。在本申请实施例中,在对接收到的数据序列进行分段并行译码的基础上,进一步针对每一个分段形成的子序列,在每个时刻内对所有状态,并行计算每个时刻输出的序列片段在该时刻状态下的分支度量值,并对各子序列中在每个时刻输出的序列片段在该时刻状态下的分支度量值进行并行加比选,进而确定出各子序列的幸存路径;之后根据每个子序列的幸存路径,确定接收到的数据序列的译码结果。在本申请实施例中,在对接收到的数据序列进行维特比译码过程中,引入两次并行计算,可提高译码速率。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施例提供的一种维特比译码方法的流程示意图;图2a-图2e为本申请实施例提供的维特比译码过程的示意图;图3a和图3b为本申请实施例提供的维特比译码方法的性能仿真图;图4为本申请实施例提供的一种接收设备的结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。针对现有维特比译码方式译码速率比较缓慢的技术问题,本申请实施例提供一种解决方案,其基本原理为:在对接收到的数据序列进行分段并行译码的基础上,针对每一个分段形成的子序列,进一步在每个时刻内对所有状态,并行计算每个时刻输出的序列片段在该时刻状态下的分支度量值,并对各子序列中在每个时刻输出的序列片段在该时刻状态下的分支度量值进行并行加比选,进而确定出各子序列的幸存路径;之后根据每个子序列的幸存路径,确定接收到的数据序列的译码结果。在本申请实施例中,在对接收到的数据序列进行维特比译码过程中,引入两次并行计算,可提高译码速率。以下结合附图,详细说明本申请各实施例提供的技术方案。图1为本申请实施例提供的一种维特比译码方法的流程示意图。如图1所示,该方法包括:101、将接收到的数据序列切分成N个子序列,其中相邻的两个子序列具有M个比特重叠,其中N为大于1的整数,M为正整数。102、在对N个子序列进行并行处理的过程中,针对第一子序列,以并行方式计算第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值。103、对第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值进行加比选,以得到第一子序列的幸存路径。104、根据N个子序列的幸存路径,确定数据序列的译码结果。在本实施例中,维特比译码主要用于对卷积码进行译码。在步骤101中,接收到的数据序列为经过卷积码编码器编码后输出的数据序列。其中,若卷积码表示为(n,k,p),则表示将k个比特位编译成n个比特位进行输出,其约束长度为p,该卷积码具有2k*(p-1)个状态;即k表示输入的比特位数,n表示输出的比特位数。例如对于(2,1,3)的卷积码,则表示每1位输入码元可编译成2位输出码元,其具有4种状态:S0(00)、S1(01)、S2(10)和S0(11)。在步骤101中,将接收到的数据序列切分成N个子序列,便于后续对N个子序列进行并行译码,可提高译码的速率。进一步,考虑到卷积码是一种前向纠错码,它处理输入传输块的信息是顺次的或者连续的。卷积码的输出不仅与当前的输入数据有关,而且还与以前的输入数据或输出数据相关。如果对接收到的数据序列进行直接分段,将会影响对数据序列的译码的准确率。为了保持各个子序列之间的关联性,提高译码的准确率,在步骤101中,在对数据序列进行分段时,使相邻的两个子序列具有M个比特重叠,即前一个子序列的尾部数据与下一子序列的首部数据重叠。其中,M为正整数。进一步,对于重叠的M个比特,相当于冗余信息,其取值太大将会影响译码器的译码速率;但是如果M取值过小,又将会破坏相邻的两个子序列之间的关联性。基于此,在本申请实施例中,对于一个(n,k,p)的卷积码来说,取M≥2k*(p-1)。这样,在保证相邻的子序列之间的关联性,提高译码准确率的同时,还可降低重叠部分对译码速率的影响,进一步提高译码速率。进一步,在步骤102和103中,对步骤101得到的N个子序列进行并行译码处理。对N个子序列进行并行译码处理的过程相同,在本实施例中,以第一子序列为例,进行示例性说明。其中,第一子序列为N个子序列中的任一子序列。对于第一子序列,在步骤102和103中,针对每个时刻,可对第一子序列在该时刻输出的序列片段进行处理,其中,每个时刻输出的序列片段的比特位数与卷积码的输出比特位数相同,即对于一个(n,k,p)的卷积码,第一子序列在本文档来自技高网...

【技术保护点】
1.一种维特比译码方法,其特征在于,包括:将接收到的数据序列切分成N个子序列,其中相邻的两个子序列具有M个比特重叠,其中N为大于1的整数,M为正整数;在对所述N个子序列进行并行处理的过程中,针对第一子序列,以并行方式计算所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值;对所述第一子序列中在每个时刻输出的序列片段在相应时刻的各种状态下的分支度量值进行加比选,以得到所述第一子序列的幸存路径;根据所述N个子序列的幸存路径,确定所述数据序列的译码结果;其中,所述第一子序列为所述N个子序列中的任一子序列。

【技术特征摘要】
1.一种维特比译码方法,其特征在于,包括:将接收到的数据序列切分成N个子序列,其中相邻的两个子序列具有M个比特重叠,其中N为大于1的整数,M为正整数;在对所述N个子序列进行并行处理的过程中,针对第一子序列,以并行方式计算所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值;对所述第一子序列中在每个时刻输出的序列片段在相应时刻的各种状态下的分支度量值进行加比选,以得到所述第一子序列的幸存路径;根据所述N个子序列的幸存路径,确定所述数据序列的译码结果;其中,所述第一子序列为所述N个子序列中的任一子序列。2.根据权利要求1所述的方法,其特征在于,以并行方式计算所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值,包括:若所述数据序列是基于(n,k,p)的卷积码编码形成的,则将所述第一子序列中在当前时刻输出的序列片段在当前时刻内的2k*(p-1)种状态作为入口参数,调用SSE指令集;利用所述SSE指令集,并行计算所述第一子序列中在当前时刻输出的序列片段在2k*(p-1)种状态下的分支度量值;其中,n为卷积码编码器输出的比特位数;k为所述卷积码编码器输入的比特位数;p表示所述卷积码编码器的约束长度。3.根据权利要求2所述的方法,其特征在于,所述利用所述SSE指令集,并行计算所述第一子序列中在当前时刻输出的序列片段在2k*(p-1)种状态下的分支度量值,包括:利用所述SSE指令集,在当前时刻内针对2k*(p-1)种状态,分别在假设当前时刻编码时输入为k个输入比特位数对应的所有输入码元片段的情况下,根据卷积码编码器对应的卷积码多项式,并行计算所述所有输入码元片段分别对应的卷积码编码输出值;并行计算所述卷积码编码输出值和所述第一子序列中在当前时刻输出的序列片段的距离,并将计算出的距离分别作为所述第一子序列中在当前时刻输出的序列片段在2k*(p-1)种状态下的分支度量值。4.根据权利要求3所述的方法,其特征在于,所述对所述第一子序列中在每个时刻输出的序列片段在相应时刻的各状态下的分支度量值进行加比选,以得到所述第一子序列的幸存路径,包括:针对所述当前时刻内的2k*(p-1)种状态,采用基4算法,将所述第一子序列中在当前时刻输出的序列片段在第一状态下的分支度量值,与前一时刻2k*(p-1)种状态中可到达所述第一状态的目标状态对应的幸存路...

【专利技术属性】
技术研发人员:洪龙龙叶进
申请(专利权)人:锐捷网络股份有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1