[发明专利]一种通用高速并行循环交错维特比译码方法有效
申请号: | 201110214224.9 | 申请日: | 2011-07-28 |
公开(公告)号: | CN102361460A | 公开(公告)日: | 2012-02-22 |
发明(设计)人: | 张浩;崔骞;战勇杰;张拯宁 | 申请(专利权)人: | 航天恒星科技有限公司 |
主分类号: | H03M13/41 | 分类号: | H03M13/41 |
代理公司: | 中国航天科技专利中心 11009 | 代理人: | 安丽 |
地址: | 100086 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 通用 高速 并行 循环 交错 译码 方法 | ||
1.一种通用高速并行循环交错Viterbi译码方法,其特征在于步骤如下:
(1)将虚拟比特插入输入数据中,之后进入步骤(2);所述输入数据为卷积编码器输出的串行数据经1:8串并转换形成的8bit并行数据;
(2)将步骤(1)中得到的输入数据写入分配FIFO中,所述分配FIFO是指用于临时存储输入数据的缓存;
(3)判断步骤(2)中的分配FIFO中是否已经写入(n-J)×m个字节,若已经写入(n-J)×m个字节,则进入步骤(4);若写入的输入数据不足(n-J)×m个字节,则返回步骤(2);其中,n为每个Viterbi译码器单次译码处理的数据长度,且n>6×k;k为卷积编码器的约束长度且k=7;所述J为连续两个Viterbi译码器单次译码处理数据的交错长度,且J>14bit;m为并行的Viterbi译码器的个数;
(4)读取分配FIFO中的数据,送给第i个Viterbi译码器的输入存储寄存器,当读取了n-J个字节之后,进入步骤(5);其中,i为自然数且i∈[1,m];
(5)将分配FIFO中的第n-J+1个字节同时写入第i个Viterbi译码器的输入存储寄存器和第i+1个Viterbi译码器的输入存储寄存器中;
(6)判断是否将分配FIFO中的从第n-J+1个字节到第n个字节共J个字节的数据同时写入第i个Viterbi译码器的输入存储寄存器和第i+1个Viterbi译码器的输入存储寄存器中,若已经写入,则进入步骤(7);若写入的数据不足J个,则继续写入直到写完J个字节的数据;
(7)将分配FIFO中的从第n+1个字节到第2n-2j个字节共n-2J个字节的数据写入第i+1个Viterbi译码器的输入存储寄存器中,之后进入步骤(8);
(8)判断i是否等于m,若不等于,则将i+1赋值给i,之后返回步骤(4);若等于,则将分配FIFO中的从第2n-2j+1个字节到第2n-j个字节共J个字节的数据同时写入第m个Viterbi译码器的输入存储寄存器和第1个Viterbi译码器的输入存储寄存器中,之后令i=1,返回步骤(4),同时进入步骤(9);
(9)将m个Viterbi译码器的输入存储寄存器中的数据开始进行译码并将译码结果存入对应的各Viterbi译码器的输出存储寄存器中,之后进入步骤(10);
(10)从步骤(9)中所述各Viterbi译码器的输出存储寄存器中读取数据,针对第1个Viterbi译码器的输出存储寄存器判断是否是第一次从其中读取数据,若是第一次,则读取从所述第1个Viterbi译码器的输出存储寄存中的第一个字节到第n个字节共n个字节的数据;若不是第一次,则进入步骤(11);
(11)针对第i个Viterbi译码器的输出存储寄存器中的数据,从第J+1个字节开始读取,共读取n-J个字节的数据,之后进入步骤(12);
(12)判断i是否等于m,若不等于,则将i+1赋值给i,之后返回步骤(11);若等于,令i=1,之后返回步骤(11)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天恒星科技有限公司,未经航天恒星科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110214224.9/1.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类