[发明专利]一种无速率Spinal码的前向堆栈译码方法有效
申请号: | 201510233300.9 | 申请日: | 2015-05-09 |
公开(公告)号: | CN104821863B | 公开(公告)日: | 2018-03-13 |
发明(设计)人: | 李颖;杨伟强;于晓璞;李娟 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L1/00 | 分类号: | H04L1/00 |
代理公司: | 西安创知专利事务所61213 | 代理人: | 景丽娜 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 速率 spinal 堆栈 译码 方法 | ||
技术领域
本发明属于通信技术领域,具体涉及一种无速率Spinal码的前向堆栈译码方法。
背景技术
无线网络通信的主要问题就是在时变信道的噪声、干扰和衰落的影响下找到一种高吞吐量的传输协议。一种理想的解决方法就是使用无速率编码,不限制发送端发送信息数量,而是根据信道状况进行调整。Spinal码是一种在时变信道无线网络中适用的无速率编码。Spinal码的核心是对输入消息比特连续使用伪随机哈希函数结合星座映射函数来产生传输符号消息。Spinal码是一种逼近香农容量限适于无线通信系统的好码。
现有的Spinal码译码方法为Bubble译码,该算法基于树搜索的最大似然译码方案。最大似然译码器从编码器初始hash状态所代表的根节点开始扩展译码树,遍历每个节点的所有输入,获得该节点的所有子节点,在搜索到树的所有叶子节点之后,能够得到最优路径。Bubble译码方法不搜索树的所有节点,在每一层搜索结束后,只保留最优的B个节点作为下一层搜索的母节点,因此,Bubble译码方案只搜索部分节点,扩展的树也只是部分树。但是,Spinal码的每一个节点的子节点数目较大,而Bubble译码方案中,每一层需要保留固定长度的节点,因此,该译码方案的计算复杂度很大,是一个随着信息位长度和信息分段长度增加而急剧增大的常数。
发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供一种无速率Spinal码的前向堆栈译码方法,其进行无速率Spinal码的译码的计算量小,性能良好,应用范围广,实用性强,便于推广使用。
为解决上述技术问题,本发明采用的技术方案是:一种无速率Spinal码的前向堆栈译码方法,其特征在于该方法包括以下步骤:
一种无速率Spinal码的前向堆栈译码方法,其特征在于该方法包括以下步骤:
步骤一、设置译码器参数:设置码树的总层数M、搜索单元大小D、每单元搜索完成后所得到的最大路径数目B、在一个搜索单元中搜索时的最大扩展路径数Clim和搜索层指数i,其中,M=n/k,n为无速率Spinal码的信息序列的长度,k为将无速率Spinal码的信息位分段后每段的信息序列的长度,D为能整除M的正整数,i的初始值为0;
步骤二、初始化搜索堆栈C_stack和保留路径堆栈B_stack,令译码器的初始hash状态与编码器的hash状态相同,将译码器的初始hash状态作为初始扩展节点压入保留路径堆栈B_stack,并将初始路径可靠度置为0,将初始扩展节点的层数置为0;
步骤三、比较iD与n/k的大小,当iD<n/k时,将i增加1,执行步骤四;当iD≥n/k时,执行步骤九;
步骤四、清空搜索堆栈C_stack,并将保留路径堆栈B_stack中的节点按可靠度大小顺序压入搜索堆栈C_stack,使得搜索堆栈C_stack中的节点按可靠度大小由栈顶向下降序排列,之后清空保留路径堆栈B_stack;
步骤五、扩展搜索堆栈C_stack的栈顶节点,遍历所有的可能输入,由子节点的路径编码序列和已有的信道观测值计算子节点的可靠度;删除被扩展过的栈顶节点,并将所有获得的子节点压入搜索堆栈C_stack;在扩展搜索堆栈C_stack的栈顶节点的过程中,当搜索堆栈C_stack的大小等于在一个搜索单元中搜索时的最大扩展路径数Clim时,终止扩展过程,执行步骤八;
步骤六、对搜索堆栈C_stack中的节点按照可靠度大小由栈顶向下降序排序,当搜索堆栈C_stack的栈顶节点的层数小于iD时,返回步骤五继续扩展搜索堆栈C_stack的栈顶节点;当搜索堆栈C_stack的栈顶节点的层数等于iD时,执行步骤七;
步骤七、将搜索堆栈C_stack的栈顶节点压入保留路径堆栈B_stack,同时遍历搜索堆栈C_stack至将除栈顶节点以外的可靠度依次从大到小排列的前B-1个层数为iD的节点,按可靠度从大到小的顺序依次压入保留路径堆栈B_stack后停止,之后返回步骤三;当除栈顶节点以外的层数为iD的节点数目小于B-1时,遍历搜索堆栈C_stack,将所有层数为iD的节点压入保留路径堆栈B_stack之后停止,之后返回步骤三;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510233300.9/2.html,转载请声明来源钻瓜专利网。