[发明专利]一种基于FPGA的QR31码译码方法有效
申请号: | 201811592240.X | 申请日: | 2018-12-25 |
公开(公告)号: | CN109787717B | 公开(公告)日: | 2021-05-18 |
发明(设计)人: | 黄继业;刘鹏;谢尚港;张新球;周涛 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | H04L1/00 | 分类号: | H04L1/00;H03M13/15 |
代理公司: | 浙江永鼎律师事务所 33233 | 代理人: | 陆永强 |
地址: | 310018 浙江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 fpga qr31 译码 方法 | ||
本发明公开了基于FPGA的QR31码译码方法,包括以下步骤:S10,数据选择模块将接收码字转换成三种不同码字;S20,分别送入三条流水线中进行并行译码;S30,数据选择模块根据译码情况最后输出译码结果;所述S20中,三条并行流水线均包含两个步骤,每个步骤均包含两个单元:校验子检查单元和纠错单元,其中,所述校验子检查单元用于产生一系列不同的校验子,并且检查这些校验子是否满足译码条件;纠错单元接收来自校验子检查单元的指示序列,决定是否触发译码。本发明通过将整个译码过程分解为独立的三路译码过程,实现高速的并行译码。
技术领域
本发明属于信道纠错码领域,涉及一种基于FPGA的QR码译码方法。
背景技术
近年来,物联网和车联网等技术逐步兴起,这些技术的应用场景中,无线信道中的指令数据包长度较短,可靠性要求很高,因此迫切需要一种适用于短帧长通信业务的纠错编码。QR码(Quadratic Residue code,平方剩余码)作为一种高效的短码纠错码,因其最小汉明距离很大,有很强的纠错能力,因而在短帧通讯领域中被采用。在实际应用中,往往利用QR码的循环特性,采用cpu译码方法,由于软件的顺序执行特点,在速度上有一定的限制。
发明内容
本发明针对现有技术的不足,提出一种基于FPGA的QR31码译码方法,通过将整个译码过程分解为独立的三路译码过程,实现高速的并行译码。
所谓QR31码,即指码长为31位,数据长为16位,最小汉明距离为7的QR码,在一些文献中也记为(31,16,7)QR码。
为实现上述目的,本发明的技术方案为一种基于FPGA的QR码译码方法,包括以下步骤:
S10,数据选择模块将接收码字转换成三种不同码字;
S20,分别送入三条流水线中进行并行译码;
S30,数据选择模块根据译码情况最后输出译码结果;
所述S20中,三条并行流水线均包含两个步骤,每个步骤均包含两个单元:校验子检查单元和纠错单元,其中,所述校验子检查单元用于产生一系列不同的校验子,并且检查这些校验子是否满足译码条件;纠错单元接收来自校验子检查单元的指示序列,决定是否触发译码。
优选地,在所述S10中三种不同码字分别为,原码字r,原码字r循环左移15位产生的码字cr,原码字第15位取反得到的码字nr。
优选地,在所述S20中,三条并行流水线均包括以下两个步骤,
S21,产生接收码字的校验子S,并对错误全在校验位的情况进行纠错;
S22,产生16种校验子,纠正信息位中有1位错误的情况。
优选地,所述校验子检查单元包括,校验子计算模块,重量计算模块,指示序列生成模块。
优选地,所述校验子计算模块,用于生成一系列校验子,对于S21,该单元产生校验子对于S22,该单元产生种校验子组合s∧sm,i,i=0,1,…,15,其中,p是r中的校验位部分,rm,i是信息位的第i位,sm,i是信息位中只有一个错误的错误图样对应的校验子,∧代表异或运算。
优选地,所述重量计算模块,用于对前级生成的各种校验子进行重量计算,进而确定各种校验子是否满足译码条件,为生成指示序列做准备,对于S21,译码条件为s的重量w(s)≤3,对于S22,译码条件为w(s∧sm,i)≤2。
优选地,所述指示序列生成模块,根据重量计算结果生成一个指示序列,用以驱动纠错单元,其每位指示相应的校验子重量是否满足解码条件,满足置1,不满足置0。
优选地,所述纠错单元包括:触发模块和译码模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811592240.X/2.html,转载请声明来源钻瓜专利网。