[发明专利]一种针对大约束长度卷积码的序列译码方法有效
申请号: | 201310352249.4 | 申请日: | 2013-08-14 |
公开(公告)号: | CN103401570A | 公开(公告)日: | 2013-11-20 |
发明(设计)人: | 马丕明;王彤彤;杨勇 | 申请(专利权)人: | 山东大学 |
主分类号: | H03M13/23 | 分类号: | H03M13/23;H04L1/00 |
代理公司: | 济南金迪知识产权代理有限公司 37219 | 代理人: | 许德山 |
地址: | 250100 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 一种针对大约束长度卷积码的序列译码方法,属于通信信道编解码技术领域,本发明给出了具体的(n,1,m)卷积码序列译码的实现过程,并有效解决了译码过程中容易出现的堆栈溢出问题。卷积码的序列译码,实际上就是按照量度值最小的准则沿着码树进行路径搜索的过程,搜索可进可退,可得到多条长短不一的路径,最终选择量度值最大的路径作为译码路径。具体实现过程中,主要使用了C语言中的链表结构来存储每步译码过程中需要存储的译码路径、量度值及下一状态,使得编程操作更容易实现,对译码得到的路径进行间隔性的存储并删除,使得缓存不会无限制增大,有效解决了堆栈溢出问题。 | ||
搜索关键词: | 一种 针对 约束 长度 卷积码 序列 译码 方法 | ||
【主权项】:
一种针对大约束长度卷积码的序列译码方法,由C语言中的链表结构来实现,此链表包括主链表和路径链表两部分,主链表用来存储每步译码相应的量度和下一状态,本步译码的路径由路径链表存储,路径链表的头指针作为主链表的数据域部分存在主链表每个结点中,这样就将每条路径与对应的量度及状态自动联系起来,当对主链表的每个结点按照量度值大小进行排序时,路径会自动跟随,该译码方法步骤如下:1)读入待译码序列的第一组n位码字,对第一组码字进行译码:a、将读入的第一组码字与码树的第一级上下分支的输出码字进行比较,分别求出上下分支对应的量度值,这里的码树实际上是卷积码编码过程的一种表述方式,对于(n,1,m)卷积码在编码时,随着输入比特和移位寄存器状态的不同,码树图会陆续分成上下两条支路,上支路对应于输入比特0,下支路对应于输入比特1,每条支路上都对应有编码输出码字,上下支路的分支处就是节点;b、为主链表分配两个结点空间,每个主链表结点下对应分配一个路径链表结点,将方法a中计算得到的大量度分支的量度、下一状态存入主链表的第一个结点即基结点的数据域部分,对应路径即这一步译码得到的0或1存入路径链表新分配的结点,将小量度分支采取同样的操作存入主链表的第二个结点及其路径链表结点,主链表的第二个结点的存储地址存放在基结点的next域中,因此这两个结点是链接在一起的,至此,第一组码字的译码完成,主链表基结点对应的路径链表中的数据即为译码路径;2)判断已译码路径长度,若长度大于一定值,则对译码长度进行部分删除,并计算得到下一步译码的输入数据位置:a)计算主链表基结点对应的路径链表的深度level,即路径链表中存储的0或1的码的个数,或称为路径链表的结点个数,预先设定主链表基结点对应的路径链表的深度level的最大值M,当路径链表的深度level达到最大值M时,则认为这条译码路径的前m长度译码路径能保证正确,m
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东大学,未经山东大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201310352249.4/,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类