一种连续消除极化堆解码器的制作方法

文档序号:12691622阅读:432来源:国知局
一种连续消除极化堆解码器的制作方法与工艺

本发明涉及无线通信,尤其是一种信道编码中连续消除极化堆解码器。



背景技术:

上世纪80年代以来,通信技术的飞速进步使人类社会迈入信息时代。无线移动通信技术的不断发展为全球信息化进程提供了强大动力。无线蜂窝移动通信历经:第一代模拟通信技术、第二代数字通信技术、第三代CDMA宽带通信技术,目前已步入4G系统的产业化和商用化阶段。在4G技术推向产业化和商用化的同时,4G之后的移动通信进入议事日程,无线移动通信演进发展面临全新挑战。随着智能终端的普及应用、以及移动新业务需求的持续增长,无线传输速率需求将在未来10年呈指数增长。据主要运营商和权威咨询机构预测:至2020年,无线通信的传输速率需求将是目前在营系统的1000倍。现有4G技术将仍然难以满足十年后超高传输速率移动互联无线通信需求,在频谱资源日趋紧缺的情况下,需要引入变革性的新技术。世界各国在推动4G产业化工作的同时,已开始着眼于第五代无线移动通信技术(5G)的研究,力求使无线移动通信系统性能和产业规模产生新的飞跃。

众所周知,业务流量10年提升1000倍是5G无线移动通信技术与产业发展的内在基本需求。这一核心需求派生出:连续广域覆盖、热点高容量、低时延高可靠、终端大连接、设备低功耗等五个具有挑战性的指标需求。从而也对5G无线移动通信技术对相应的信道编码实现提出了前所未有的高要求与新挑战。在5G移动通信的全新应用场景下,极化码已经成为5G信道编码控制信道的标准。研究适用于5G移动通信系统的高效极化码编码器和译码器具有极强的理论意义与应用价值。

近期的主流文献中,基于极化码解码器的设计,比较突出的是列表连续消除极化解码器和连续消除极化栈解码器。但是,目前的连续消除极化栈解码器的解码的时间复杂度仍然不够低,而且栈的结构中插入新节点的操作需要的时间复杂度是线性的,存在可改善的空间。



技术实现要素:

发明目的:针对上述现有技术存在的缺陷,本发明旨在提供一种连续消除极化堆解码器。

技术方案:一种连续消除极化堆解码器,包括如下步骤:

步骤1:由第一个信息位产生两条初始路径的可能性值、路径长度和路径信息存放入最初的大根堆里,尾指针为2;

步骤2:取出堆的根节点,若根节点的路径长度Lroot等于K,则跳至步骤3;否则若根节点的路径长度Lroot小于Lmax,则进行步骤2.1,否则跳至步骤2.2;其中,K为极化码的信息位长度,Lroot为根节点的路径长度,Lmax为堆中至少出现Q次的路径的最大长度,Q为堆中同一长度路径出现的最大上限次数;

步骤2.1:尾指针从堆的末尾寻找第一个满足路径长度大于等于Lmax的路径替换到根节点,并且尾指针移动到该位置的前一个位置,表示该节点之后的路径已经删除,若尾指针为0,则宣告解码失败并结束,否则跳回步骤2;

步骤2.2:将堆的根节点添加一位‘0’或者‘1’之后扩展成两条新的路径,比较这两条路径的可能性值大小,将可能性值大的路径定义好路径,另一条定义为差路径;用好路径替换原根节点,并作堆的下调操作,若当前堆中节点未满,则进行步骤2.2.1,否则跳至步骤2.2.2;

步骤2.2.1:将差路径插入到堆的末尾,并做堆的上调操作,再跳回步骤2;

步骤2.2.2:随机选择堆的一个叶子节点,将其与差路径比较可能性值大小,将可能性大的那条保留在堆中,并作堆的上调操作,跳回步骤2;

步骤3:对根节点进行CRC校验,通过校验即为解码成功;否则,将堆中最后一个元素替换根节点并做下调操作,尾指针减1;如果尾指针为0,那么解码失败;否则不通过次数加1,如果不通过次数等于Q,则解码失败,否则跳回步骤2。

有益效果:本发明用堆来存储不同长度的解码路径,而在堆中插入操作的复杂度只需要O(logD),小于栈解码器的O(D),D表示堆中最大节点数;如此,在连续消除极化堆解码中,插入操作的时间复杂度降低,进一步带来解码时间复杂度的降低。

附图说明

图1是在一个连续消除极化堆解码器的结构框架图;

图2是在一个未满的连续消除极化堆中根节点的扩展、插入过程图;

图3是在一个已满的连续消除极化堆中根节点的扩展、插入过程图;

图4是在一个连续消除极化堆中删除节点的展示图。

具体实施方式

下面通过一个最佳实施例并结合附图对本技术方案进行详细说明。

如图1所示,一种连续消除极化堆解码器,本发明通过指令集控制连续消除解码器和堆空间的交互,在堆空间中,将根节点的解码路径的可能性值、路径长度和路径信息存放在根节点寄存器中,将其余路径的解码路径的可能性值、路径长度和路径信息存放在存储器。

在一个未满的连续消除极化堆中根节点的扩展、插入过程如图2所示,在一个已满的连续消除极化堆中根节点的扩展、插入过程如图3所示,在一个连续消除极化堆中删除节点如图4所示,用K表示极化码的信息位长度,用D表示堆中最大节点数,用Q表示堆中同一长度路径出现的最大上限次数,用Lmax表示堆中至少出现Q次的路径的最大长度,用Lroot表示根节点的路径长度。

将每一条解码路径的可能性值、路径长度和路径信息存放在一个大根堆中,堆的初始化由极化码的第一个信息位所产生的两条初始路径建立,进行解码,直到最终解码路径通过CRC校验为解码成功,或者最终解码路径不通过CRC校验Q次或者堆中元素个数为0为解码失败。

具体包括如下步骤:

步骤1即初始化:由第一个信息位产生两条初始路径的可能性值、路径长度和路径信息存放入最初的大根堆里,尾指针为2;

步骤2即扩展、插入与删除:在解码的每一步,取出堆的根节点,若根节点的路径长度Lroot等于K,则跳至步骤3;否则若根节点的路径长度Lroot小于Lmax,则进行步骤2.1,否则跳至步骤2.2;

步骤2.1:尾指针从堆的末尾寻找第一个满足路径长度大于等于Lmax的路径替换到根节点,并且尾指针移动到该位置的前一个位置,表示该节点之后的路径已经删除,若尾指针为0,则宣告解码失败并结束,否则跳回步骤2;

步骤2.2:将堆的根节点添加一位‘0’或者‘1’之后扩展成两条新的路径,比较这两条路径的可能性值大小,将可能性值大的路径定义好路径,另一条定义为差路径;用好路径替换原根节点,并作堆的下调操作,若当前堆中节点未满,则进行步骤2.2.1,否则跳至步骤2.2.2;

步骤2.2.1:将差路径插入到堆的末尾,并做堆的上调操作,再跳回步骤2;

步骤2.2.2:随机选择堆的一个叶子节点,将其与差路径比较可能性值大小,将可能性大的那条保留在堆中,并作堆的上调操作,跳回步骤2;

此处步骤2.2.2也可以采用如下替代方案:选择堆的最小的一个叶子节点,将其与差路径比较可能性值大小,将可能性大的那条保留在堆中,并作堆的上调操作,跳回步骤2;

该替代方案优点在于可以将差路径与堆中严格最小值进行对比,缺点在于使得插入的时间复杂度提高到了O(D)。

步骤3即校验:对根节点进行CRC校验,通过校验即为解码成功;否则,将堆中最后一个元素替换根节点并做下调操作,尾指针减1;如果尾指针为0,那么解码失败;否则不通过次数加1,如果不通过次数等于Q,则解码失败,否则跳回步骤2。

本发明进行插入操作需要涉及的堆的上调与下调操作均为堆的基本操作且时间复杂度为O(logD),优于栈解码中插入操作的时间复杂度O(D)。

以上仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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