首页 / 专利库 / 电脑编程 / 算法 / 一种用于MCU的LDPC码纠错方法及纠错模块

一种用于MCU的LDPC码纠错方法及纠错模

阅读:645发布:2023-12-29

专利汇可以提供一种用于MCU的LDPC码纠错方法及纠错模专利检索,专利查询,专利分析的服务。并且本 发明 提供了一种用于MCU的LDPC码纠错方法,其特征在于:包括如下步骤:S1步,根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存;S2步,输入长度为k的信息序列X;基于生成矩阵G,将信息序列X进行编码得到码字Y;将码字Y编制成码字信息并向外传输;S3步,接收码字信息,得到带噪码字Y′;使用 深度学习 译码法将带噪码字Y′直接译码成码字X。该方法具有更强的纠错能 力 ,使MCU具有更高的可靠性,降低了译码的 迭代 次数和复杂度。本发明还提供一种实现上述LDPC码纠错方法的纠错模 块 。,下面是一种用于MCU的LDPC码纠错方法及纠错模专利的具体信息内容。

1.一种用于MCU的LDPC码纠错方法,其特征在于:包括如下步骤:
S1步,根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存;
S2步,输入长度为k的信息序列X;基于生成矩阵G,将信息序列X进行编码得到码字Y;将码字Y编制成码字信息并向外传输;
S3步,接收码字信息,得到带噪码字Y′;使用深度学习译码法将带噪码字Y′直接译码成码字X。
2.根据权利要求1所述的用于MCU的LDPC码纠错方法,其特征在于:所述S1步中,校验矩阵H的构造方法是:设定LDPC码长为n,校验位长度为m,码率为R=k/n;利用maykay构造法,构造出校验矩阵H。
3.根据权利要求2所述的用于MCU的LDPC码纠错方法,其特征在于:所述S1步中,由校验矩阵H转换得到生成矩阵G,是指:将校验矩阵H的右半部分H2求逆,再乘校验矩阵H的左半部分H1,得到生成矩阵G的右半部分G2;生成矩阵G的左半部分G1设定为大小为k×k的单位矩阵I:
其中,生成矩阵G的大小为k×n。
4.根据权利要求3所述的用于MCU的LDPC码纠错方法,其特征在于:所述S2步中,基于生成矩阵G,将信息序列X与生成矩阵G相乘得到长度为n的码字Y:
Y=X×G。
5.根据权利要求4所述的用于MCU的LDPC码纠错方法,其特征在于:所述S3步中,使用深度学习译码法将带噪码字Y′直接译码成码字X,是指:包括以下分步骤:
S31步,构建深度学习模型:采用DNN模型,设定模型输入层维度、隐藏层层数以及各层网络的神经元个数、输出层神经元个数,在隐藏层的输出部分添加激活函数,设定模型的损失函数;
S32步,训练模型:构建数据集,数据集为多组的带噪码字Y′,标签为原始码字的信息序列X;将数据集按设定比例分为训练集和验证集;将训练集输入到DNN模型,通过反向传播算法来更新模型的参数使损失函数收敛,当验证集的准确率和损失函数趋于稳定时停止训练,保存模型;
S33步,将保存的模型作为纠错模型,带噪码字Y′通过纠错模型后译码为码字X。
6.一种实现权利要求1所述的用于MCU的LDPC码纠错方法的LDPC码纠错模,其特征在于:包括:
LDPC矩阵储存模块,用于根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存;
LDPC编码模块,用于基于生成矩阵G,将长度为k的信息序列X进行编码得到码字Y;
以及LDPC译码模块,用于接收带噪码字Y′,使用深度学习译码法将带噪码字Y′直接译码成码字X。
7.根据权利要求6所述的用于MCU的LDPC码纠错模块,其特征在于:所述LDPC矩阵储存模块中,设定LDPC码长为n,校验位长度为m,码率为R=k/n;利用maykay构造法,构造出校验矩阵H。
8.根据权利要求7所述的用于MCU的LDPC码纠错模块,其特征在于:所述LDPC矩阵储存模块中,由校验矩阵H转换得到生成矩阵G,是指:将校验矩阵H的右半部分H2求逆,再乘校验矩阵H的左半部分H1,得到生成矩阵G的右半部分G2;生成矩阵G的左半部分G1设定为大小为k×k的单位矩阵I:
其中,生成矩阵G的大小为k×n。
9.根据权利要求8所述的用于MCU的LDPC码纠错模块,其特征在于:所述LDPC编码模块中,基于生成矩阵G,将信息序列X与生成矩阵G相乘得到长度为n的码字Y:
Y=X×G。

说明书全文

一种用于MCU的LDPC码纠错方法及纠错模

技术领域

[0001] 本发明涉及电子通信技术领域,更具体地说,涉及一种用于MCU的LDPC码纠错方法及纠错模块。

背景技术

[0002] 微控制单元(Microcontroller Unit;MCU),又称单片微型计算机(Single Chip Microcomputer)或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机。为了提高通信的可靠性,MCU内部配备了误码校正(ECC)模块,传统的ECC模块使用的是汉明码和BCH码来纠正错误。随着MCU的不断发展,人们正在将MCU用于各种各样的新型和更加复杂的计算任务;但是汉明码和BCH码的纠错能有限,无法满足更加复杂的计算任务和更加庞大的数据通讯量。
[0003] 低密度奇偶检验码(Low Density Parity Check Code;LDPC)是一类性能逼近香农限的好码,由于它具有纠错能力强、译码复杂度低等诸多优点,是取代汉明码和BCH码的理想方案,但是LDPC码在MCU技术领域上的应用仍然空白。

发明内容

[0004] 为克服现有技术中的缺点与不足,本发明的一个目的在于提供一种用于MCU的LDPC码纠错方法;该方法具有更强的纠错能力,使MCU具有更高的可靠性,降低了译码的迭代次数和复杂度。本发明的另一个目的在于提供一种实现上述LDPC码纠错方法、纠错能力强、可靠性高、可降低译码迭代次数和复杂度的LDPC码纠错模块。
[0005] 为了达到上述目的,本发明通过下述技术方案予以实现:一种用于MCU的LDPC码纠错方法,其特征在于:包括如下步骤:
[0006] S1步,根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存;
[0007] S2步,输入长度为k的信息序列X;基于生成矩阵G,将信息序列X进行编码得到码字Y;将码字Y编制成码字信息并向外传输;
[0008] S3步,接收码字信息,得到带噪码字Y′;使用深度学习译码法将带噪码字Y′直接译码成码字X。
[0009] 优选地,所述S1步中,校验矩阵H的构造方法是:设定LDPC码长为n,校验位长度为m,码率为R=k/n;利用maykay构造法,构造出校验矩阵H。
[0010] 优选地,所述S1步中,由校验矩阵H转换得到生成矩阵G,是指:将校验矩阵H的右半部分H2求逆,再乘校验矩阵H的左半部分H1,得到生成矩阵G的右半部分G2;生成矩阵G的左半部分G1设定为大小为k×k的单位矩阵I:
[0011]
[0012] 其中,生成矩阵G的大小为k×n。
[0013] 优选地,所述S2步中,基于生成矩阵G,将信息序列X与生成矩阵G相乘得到长度为n的码字Y:
[0014] Y=X×G。
[0015] 优选地,所述S3步中,使用深度学习译码法将带噪码字Y′直接译码成码字X,是指:包括以下分步骤:
[0016] S31步,构建深度学习模型:采用DNN模型,设定模型输入层维度、隐藏层层数以及各层网络的神经元个数、输出层神经元个数,在隐藏层的输出部分添加激活函数,设定模型的损失函数;
[0017] S32步,训练模型:构建数据集,数据集为多组的带噪码字Y′,标签为原始码字的信息序列X;将数据集按设定比例分为训练集和验证集;将训练集输入到DNN模型,通过反向传播算法来更新模型的参数使损失函数收敛,当验证集的准确率和损失函数趋于稳定时停止训练,保存模型;
[0018] S33步,将保存的模型作为纠错模型,带噪码字Y′通过纠错模型后译码为码字X。
[0019] 一种实现上述用于MCU的LDPC码纠错方法的LDPC码纠错模块,其特征在于:包括:
[0020] LDPC矩阵储存模块,用于根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存;
[0021] LDPC编码模块,用于基于生成矩阵G,将长度为k的信息序列X进行编码得到码字Y;
[0022] 以及LDPC译码模块,用于接收带噪码字Y′,使用深度学习译码法将带噪码字Y′直接译码成码字X。
[0023] 优选地,所述LDPC矩阵储存模块中,设定LDPC码长为n,校验位长度为m,码率为R=k/n;利用maykay构造法,构造出校验矩阵H。
[0024] 优选地,所述LDPC矩阵储存模块中,由校验矩阵H转换得到生成矩阵G,是指:将校验矩阵H的右半部分H2求逆,再乘校验矩阵H的左半部分H1,得到生成矩阵G的右半部分G2;生成矩阵G的左半部分G1设定为大小为k×k的单位矩阵I:
[0025]
[0026]
[0027] 其中,生成矩阵G的大小为k×n。
[0028] 优选地,所述LDPC编码模块中,基于生成矩阵G,将信息序列X与生成矩阵G相乘得到长度为n的码字Y:
[0029] Y=X×G。
[0030] 与现有技术相比,本发明具有如下优点与有益效果:
[0031] 1、相比于传统方式采用汉明码和BCH码,本发明使用LDPC码作为差错控制码,在相同码长和码率的条件下具有更强的纠错能力,使MCU具有更高的可靠性;
[0032] 2、本发明使用深度神经网络译码,相比传统的BP迭代译码进一步提升了LDPC的性能,并且降低了译码的迭代次数和复杂度。附图说明
[0033] 图1是本发明用于MCU的LDPC码纠错方法的流程图
[0034] 图2是本发明用于MCU的LDPC码纠错模块的结构图;
[0035] 图3是实施例中LDPC码的深度神经网络结构图;
[0036] 图4是实施例中LDPC码与传统BCH码的性能比较图。

具体实施方式

[0037] 下面结合附图与具体实施方式对本发明作进一步详细的描述。
[0038] 实施例一
[0039] 本实施例一种用于MCU的LDPC码纠错方法,其流程如图1所示,包括如下步骤:
[0040] S1步,根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存。
[0041] 具体地说,设定LDPC码长为n,待输入信息序列X的长度为k,校验位长度为m,码率为R=k/n;利用maykay构造法,构造出校验矩阵H。
[0042] 由校验矩阵H转换得到生成矩阵G,是指:将校验矩阵H的右半部分H2求逆,再乘校验矩阵H的左半部分H1,得到生成矩阵G的右半部分G2;生成矩阵G的左半部分G1设定为大小为k×k的单位矩阵I:
[0043]
[0044] 其中,生成矩阵G的大小为k×n。
[0045] S2步,输入长度为k的信息序列X;基于生成矩阵G,将信息序列X进行编码得到码字Y;将码字Y编制成码字信息并向外传输。
[0046] 具体地说,基于生成矩阵G,将信息序列X与生成矩阵G相乘得到长度为n的码字Y:
[0047] Y=X×G。
[0048] S3步,接收码字信息,得到带噪码字Y′;使用深度学习译码法将带噪码字Y′直接译码成码字X。
[0049] 具体地说,使用深度学习译码法将带噪码字Y′直接译码成码字X,是指:包括以下分步骤:
[0050] S31步,构建深度学习模型:采用DNN模型,设定模型输入层维度、隐藏层层数以及各层网络的神经元个数、输出层神经元个数,在隐藏层的输出部分添加激活函数,设定模型的损失函数;
[0051] S32步,训练模型:构建数据集,数据集为多组的带噪码字Y′,标签为原始码字的信息序列X;将数据集按设定比例分为训练集和验证集;将训练集输入到DNN模型,通过反向传播算法来更新模型的参数使损失函数收敛,当验证集的准确率和损失函数趋于稳定时停止训练,保存模型;
[0052] S33步,将保存的模型作为纠错模型,带噪码字Y′通过纠错模型后译码为码字X。
[0053] 相比于传统方式采用汉明码和BCH码,本发明使用LDPC码作为差错控制码,在相同码长和码率的条件下具有更强的纠错能力,使MCU具有更高的可靠性;本发明使用深度神经网络译码,相比传统的BP迭代译码进一步提升了LDPC的性能,并且降低了译码的迭代次数和复杂度。
[0054] 为实现上述LDPC码纠错方法,本实施例提供一种LDPC码纠错模块,其结构如图2所示,包括:
[0055] LDPC矩阵储存模块,用于根据设定LDPC码长和码率构造LDPC的校验矩阵H,由校验矩阵H转换得到生成矩阵G,并将校验矩阵H和生成矩阵G进行储存;
[0056] LDPC编码模块,用于基于生成矩阵G,将长度为k的信息序列X进行编码得到码字Y;
[0057] 以及LDPC译码模块,用于接收带噪码字Y′,使用深度学习译码法将带噪码字Y′直接译码成码字X。
[0058] 具体地说,所述LDPC矩阵储存模块中,设定LDPC码长为n,校验位长度为m,码率为R=k/n;利用maykay构造法,构造出校验矩阵H。
[0059] 所述LDPC矩阵储存模块中,由校验矩阵H转换得到生成矩阵G,是指:将校验矩阵H的右半部分H2求逆,再乘校验矩阵H的左半部分H1,得到生成矩阵G的右半部分G2;生成矩阵G的左半部分G1设定为大小为k×k的单位矩阵I:
[0060]
[0061] 其中,生成矩阵G的大小为k×n。
[0062] 所述LDPC编码模块中,基于生成矩阵G,将信息序列X与生成矩阵G相乘得到长度为n的码字Y:
[0063] Y=X×G。
[0064] 实施例二
[0065] 本实施例以码率为7/15的LDPC码为例进行来说明。一种用于MCU的LDPC码纠错方法,包括如下步骤:
[0066] S1步,设定LDPC码长n为15bit,待输入信息序列X的长度k为7bit,校验位长度m为8bit,码率R=7/15;根据码长和码率使用maykay构造法构造LDPC的校验矩阵H,维度为8×
15。
[0067] 将校验矩阵H转换为对应的生成矩阵G,生成矩阵G维度7×15。
[0068] S2步,通过编码前长度为7的信息序列X与LDPC码生成矩阵G相乘得到编码后长度为15的码字Y;将码字Y编制成码字信息并向外传输。
[0069] S3步,接收码字信息,得到带噪码字Y′;使用深度学习译码法将码字Y′直接译码成码字X。是指包括以下步骤:
[0070] S31步,构建深度学习模型:采用DNN模型,设定模型输入层维度为15,隐藏层层数为3以及各层网络的神经元个数分为别2048、1024、1024,输出层神经元个数为128,模型结构如图3所示。在隐藏层的输出部分添加激活函数为ReLU函数,设定模型的损失函数为交叉熵;
[0071] S32步,训练模型:构建数据集,数据集为多组的带噪码字Y′,标签为原始码字的信息序列X;将数据集按7:3的比例分为训练集和验证集;将训练集输入到DNN模型,通过反向传播算法来更新模型的参数使损失函数收敛,当验证集的准确率和损失函数趋于稳定时停止训练,保存模型;
[0072] S33步,将保存的模型作为纠错模型,带噪码字Y′通过纠错模型后译码为码字X,完成译码。
[0073] 上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈