一种错误位置多项式求解方法及装置.pdf

上传人:1****2 文档编号:4451639 上传时间:2018-10-03 格式:PDF 页数:20 大小:6.50MB
返回 下载 相关 举报
一种错误位置多项式求解方法及装置.pdf_第1页
第1页 / 共20页
一种错误位置多项式求解方法及装置.pdf_第2页
第2页 / 共20页
一种错误位置多项式求解方法及装置.pdf_第3页
第3页 / 共20页
点击查看更多>>
资源描述

《一种错误位置多项式求解方法及装置.pdf》由会员分享,可在线阅读,更多相关《一种错误位置多项式求解方法及装置.pdf(20页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 102891689 A (43)申请公布日 2013.01.23 C N 1 0 2 8 9 1 6 8 9 A *CN102891689A* (21)申请号 201210364948.6 (22)申请日 2012.09.26 H03M 13/15(2006.01) (71)申请人成都国微电子有限公司 地址 610000 四川省成都市高新区天府软件 园A区A1栋3楼 (72)发明人王俊敏 钟孟辰 杨航 谢文刚 任民 (74)专利代理机构北京集佳知识产权代理有限 公司 11227 代理人李丽 (54) 发明名称 一种错误位置多项式求解方法及装置 (57) 摘要 本申请公。

2、开了一种错误位置多项式求解方法 及装置,该方法包括:在每轮迭代的第一周期中 输入奇数项伴随式的系数和偶数项伴随式的系 数,计算下轮迭代所需的修正值;在每轮迭代的 第二周期中判断修正值是否为0,并根据判断结 果输出下轮迭代所需的中间多项式的系数以及中 间量;在每轮迭代的第二周期中根据修正值和本 轮迭代所需的错误位置多项式的系数、本轮迭代 所需的中间多项式的系数以及中间量,计算下轮 迭代所需的错误位置多项式的系数。本申请方案 提供的错误位置多项式求解的IBM迭代电路大大 降低了关键路径延时,均衡解决了面积和时序问 题,使得该错误位置多项式求解方法及装置可以 应用于高频数据传输。 (51)Int.C。

3、l. 权利要求书2页 说明书11页 附图6页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 2 页 说明书 11 页 附图 6 页 1/2页 2 1.一种错误位置多项式求解方法,其特征在于,包括: 在每轮迭代的第一周期中输入奇数项伴随式的系数和偶数项伴随式的系数,计算下轮 迭代所需的修正值; 在每轮迭代的第二周期中判断所述修正值是否为0,并根据判断结果输出下轮迭代所 需的中间多项式的系数以及中间量; 在每轮迭代的第二周期中根据所述修正值和本轮迭代所需的错误位置多项式的系数、 本轮迭代所需的中间多项式的系数以及中间量,计算下轮迭代所需的错误位置多项式的系 数。 2.根据。

4、权利要求1所述的方法,其特征在于,所述计算下轮迭代所需的修正值,具体包 括: 对所述奇数项伴随式的系数和对应的本轮迭代所需的错误位置多项式的系数进行乘 法运算; 对所述偶数项伴随式的系数和对应的本轮迭代所需的错误位置多项式的系数进行乘 法运算; 对两组乘法运算的结果进行加法运算,得到下轮迭代所需的修正值。 3.根据权利要求1所述的方法,其特征在于,所述根据判断结果输出下轮迭代所需的 中间多项式的系数以及中间量,具体包括: 若所述修正值为0,将所述本轮迭代所需的中间多项式的系数以及中间量分别作为下 轮迭代所需的中间多项式的系数以及中间量输出; 若所述修正值不为0,将所述本轮迭代所需的错误位置多项。

5、式的系数作为下轮迭代所 需的中间多项式的系数输出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量输 出。 4.根据权利要求1所述的方法,其特征在于,所述计算下轮迭代所需的错误位置多项 式的系数,具体包括: 对所述下轮迭代所需的修正值和所述本轮迭代所需的中间多项式的系数进行乘法运 算; 对所述本轮迭代所需的错误位置多项式的系数和所述本轮迭代所需的中间量进行乘 法运算; 对两组乘法运算的结果进行加法运算,得到下轮迭代所需的错误位置多项式的系数。 5.一种错误位置多项式求解装置,其特征在于,包括: 伴随式输出寄存器组、第一寄存器组、第二寄存器组、第三寄存器组、第一有限域乘法 器组、第二有限域乘法器。

6、组、加法器,加法器组、控制逻辑组和选择器,其中: 所述伴随式输出寄存器组用于在每轮迭代的第一周期中输出本轮迭代所需的奇数项 伴随式的系数和偶数项伴随式的系数; 所述第一寄存器组用于在每轮迭代的第一周期中输出本轮迭代所需的错误位置多项 式的系数,并在每轮迭代的第二周期中保存本轮迭代更新的错误位置多项式的系数; 所述第一有限域乘法器组用于在每轮迭代的第一周期中对所述奇数项伴随式的系数 和对应的本轮迭代所需的错误位置多项式的系数进行乘法运算,对所述偶数项伴随式的系 数和对应的本轮迭代所需的错误位置多项式的系数进行乘法运算,并在每轮迭代的第二周 权 利 要 求 书CN 102891689 A 2/2页。

7、 3 期中对所述本轮迭代所需的错误位置多项式的系数和本轮迭代所需的中间量进行乘法运 算; 所述加法器用于在每轮迭代的第一周期中对所述第一有限域乘法器组在每轮迭代的 第一周期中进行乘法运算后的结果进行加法运算,生成下轮迭代所需的修正值; 所述第二寄存器组用于在每轮迭代的第一周期中保存所述加法器生成的所述下轮迭 代所需的修正值; 所述控制逻辑组用于判断迭代是否全部完成,且当判断出迭代未全部完成时在每轮迭 代的第二周期中判断所述下轮迭代所需的修正值是否为0,若为0,将所述本轮迭代所需的 中间多项式的系数以及中间量分别作为下轮迭代所需的中间多项式的系数以及中间量输 出,若不为0,将所述本轮迭代所需的错。

8、误位置多项式的系数作为下轮迭代所需的中间多项 式的系数输出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量输出; 所述第三寄存器组用于在每轮迭代的第二周期中输出本轮迭代所需的中间多项式的 系数和辅助计算的中间量,并保存下轮迭代所需的中间多项式的系数和辅助计算的中间 量; 所述第二有限域乘法器组用于在每轮迭代的第二周期中对所述下轮迭代所需的修正 值和所述中间多项式的系数进行乘法运算; 所述加法器组用于在每轮迭代的第二周期中对所述第一有限域乘法器组在每轮迭代 的第二周期中进行乘法运算后的结果和所述第二有限域乘法器组在每轮迭代的第二周期 中进行乘法运算后的结果进行加法运算,生成本轮迭代更新的所述错。

9、误位置多项式的系 数; 所述选择器用于在每轮迭代的第一周期中选择所述伴随式输出寄存器组的输出,并在 每轮迭代的第二周期中选择所述控制逻辑组的输出。 6.根据权利要求5所述的装置,其特征在于,所述伴随式输出寄存器组包括: 奇数项伴随式寄存器组、偶数项伴随式寄存器组和移位寄存器组,其中: 所述奇数项伴随式寄存器组用于输出奇数项伴随式的系数; 所述偶数项伴随式寄存器组用于输出偶数项伴随式的系数; 所述移位寄存器组用于接收所述奇数项伴随式的系数和所述偶数项伴随式的系数并 进行移位输出。 7.根据权利要求5所述的装置,其特征在于,所述控制逻辑组包括: 第一控制逻辑和第二控制逻辑,其中: 所述第一控制逻辑。

10、用于判断迭代是否全部完成,且当判断出迭代未全部完成时在每轮 迭代的第二周期中判断所述下轮迭代所需的修正值是否为0,且用于判断迭代是否全部完 成; 所述第二控制逻辑用于在所述下轮迭代所需的修正值为0时,将所述本轮迭代所需的 中间多项式的系数以及中间量分别作为下轮迭代所需的中间多项式的系数以及中间量输 出,在所述下轮迭代所需的修正值不为0时,将所述本轮迭代所需的错误位置多项式的系 数作为下轮迭代所需的中间多项式的系数输出,并将下轮迭代所需的修正值作为下轮迭代 所需的中间量输出。 权 利 要 求 书CN 102891689 A 1/11页 4 一种错误位置多项式求解方法及装置 技术领域 0001 本。

11、申请涉及数字通信和数据信息处理领域,尤其涉及一种错误位置多项式求解方 法及装置。 背景技术 0002 纠错码技术在数据通信、数据存储等方面应用广泛,现在常见的纠错码有:RS (Reed-Solomon里德-所罗门)码、BCH码、海明码,其中海明码由于码距较小,只能纠正一位 错误。而RS码、BCH码可以进行多比特纠错,因而应用十分广泛。在BCH码的解码过程中, 最关键的一步是求解关键方程以获得错误位置多项式,它占用了最大的资源和最多的运算 量。 0003 对于一个最多可纠t个错的二进制BCH码,解关键方程就是由求得的2t个伴随式 值S 1 、S 2 、S 2t 来确定错误位置多项式(x)=1+ 。

12、1 x+ 2 x 2 + t x t 的系数 1 、 2 、 t ,得到了这个多项式后,就可以通过钱氏搜索等方法来确定错误发生的位置,从而纠正 产生的错误。 0004 图1为现有技术通用的IBM迭代算法流程图,设 (k) (x)是待求的差错位置多项 式, (k) (x)是辅助计算的中间多项式, (k+1) 是连续迭代前后两个错误位置多项式的差值, 这里称为修正值,k代表迭代计算的次数,l (k) 表示多项式 (k) (x)的阶, (k) 是辅助计算的 中间量,迭代步骤如下: 0005 第一步:设置初始值: 0006 (0) (x)=1; (0) (x)=1;l (0) =0; (0) =1;k。

13、=0 0007 第二步:计算当前迭代值对于牛顿恒等式的误差: 0008 0009 第三步:修正(x)产生满足当前牛顿等式的(x): 0010 (k+1) (x)= (k) (k) (x)+ (k+1) (k) (x)x 0011 第四步:根据条件修改中间变量值: 0012 当 (k+1) (x)=0or 2l (k) k时: 0013 (k+1) (x)=x (k) (x) 0014 l (k+1) l (k) 0015 (k+1) = (k) 0016 k=k+1 0017 当 (k+1) (x)0 and 2l (k) k时: 0018 (k+1) (x)= (k) (x) 0019 l 。

14、(k+1) k+1-l (k) 0020 (k+1) = (k+1) 0021 k=k+1 说 明 书CN 102891689 A 2/11页 5 0022 第五步:判断k是否等于2t,如果不是进入第二步;否则结束运算。输出错误位置 多项式的系数。 0023 图2为现有技术中对应IBM迭代算法的错误位置多项式求解电路,图中表示有 限域乘法器,表示有限域加法器。该电路总共包含有限域乘法器3t+2个,其中有限域乘 法器组11和有限域乘法器组15均为t+1个,有限域乘法器组14为t个。伴随式按照一轮 一拍的方式进入移位寄存器组A进行迭代,总共需要迭代计算2t个时钟周期,而目前公开 的方法中每轮只输入。

15、一个伴随式系数,电路的最长延时路径(也称为关键路径)为从移位寄 存器组A到寄存器组B之间的路径,共需要经过有限域乘法器组11、t+1输入有限域加法器 12、有限域乘法器14和2输入有限域加法器13等4个单元,关键路径延时为2T 乘法器 +T 加法 器2 +T 加法器(t+1) 。 0024 在实现本申请的过程中,通过对现有技术的研究,发明人发现现有技术中至少存 在如下问题:有限域中的乘法器由于其复杂性成为影响电路速度和面积的关键因数,而该 电路中的乘法器数量过多,导致关键路径延迟过长,不适用于高频数据传输。 发明内容 0025 有鉴于此,本发明提供了一种错误位置多项式求解方法及装置,以解决现有。

16、方法 和装置中由于乘法器数量过多导致关键路径延迟过长的问题。 0026 为了解决上述问题,本申请提供一种错误位置多项式求解方法如下: 0027 一种错误位置多项式求解方法,包括: 0028 在每轮迭代的第一周期中输入奇数项伴随式的系数和偶数项伴随式的系数,计算 下轮迭代所需的修正值; 0029 在每轮迭代的第二周期中判断所述修正值是否为0,并根据判断结果输出下轮迭 代所需的中间多项式的系数以及中间量; 0030 在每轮迭代的第二周期中根据所述修正值和本轮迭代所需的错误位置多项式的 系数、本轮迭代所需的中间多项式的系数以及中间量,计算下轮迭代所需的错误位置多项 式的系数。 0031 优选地,所述。

17、计算下轮迭代所需的修正值,具体包括: 0032 对所述奇数项伴随式的系数和对应的本轮迭代所需的错误位置多项式的系数进 行乘法运算; 0033 对所述偶数项伴随式的系数和对应的本轮迭代所需的错误位置多项式的系数进 行乘法运算; 0034 对两组乘法运算的结果进行加法运算,得到下轮迭代所需的修正值。 0035 优选地,所述根据判断结果输出下轮迭代所需的中间多项式的系数以及中间量, 具体包括: 0036 若所述修正值为0,将所述本轮迭代所需的中间多项式的系数以及中间量分别作 为下轮迭代所需的中间多项式的系数以及中间量输出; 0037 若所述修正值不为0,将所述本轮迭代所需的错误位置多项式的系数作为下。

18、轮迭 代所需的中间多项式的系数输出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量 输出。 说 明 书CN 102891689 A 3/11页 6 0038 优选地,所述计算下轮迭代所需的错误位置多项式的系数,具体包括: 0039 对所述下轮迭代所需的修正值和所述本轮迭代所需的中间多项式的系数进行乘 法运算; 0040 对所述本轮迭代所需的错误位置多项式的系数和所述本轮迭代所需的中间量进 行乘法运算; 0041 对两组乘法运算的结果进行加法运算,得到下轮迭代所需的错误位置多项式的系 数。 0042 为了解决上述问题,本申请还提供一种错误位置多项式求解装置如下 0043 一种错误位置多项式求解。

19、装置,包括: 0044 伴随式输出寄存器组、第一寄存器组、第二寄存器组、第三寄存器组、第一有限域 乘法器组、第二有限域乘法器组、加法器,加法器组、控制逻辑组和选择器,其中: 0045 所述伴随式输出寄存器组用于在每轮迭代的第一周期中输出本轮迭代所需的奇 数项伴随式的系数和偶数项伴随式的系数; 0046 所述第一寄存器组用于在每轮迭代的第一周期中输出本轮迭代所需的错误位置 多项式的系数,并在每轮迭代的第二周期中保存本轮迭代更新的错误位置多项式的系数; 0047 所述第一有限域乘法器组用于在每轮迭代的第一周期中对所述奇数项伴随式的 系数和对应的本轮迭代所需的错误位置多项式的系数进行乘法运算,对所述。

20、偶数项伴随式 的系数和对应的本轮迭代所需的错误位置多项式的系数进行乘法运算,并在每轮迭代的第 二周期中对所述本轮迭代所需的错误位置多项式的系数和本轮迭代所需的中间量进行乘 法运算; 0048 所述加法器用于在每轮迭代的第一周期中对所述第一有限域乘法器组在每轮迭 代的第一周期中进行乘法运算后的结果进行加法运算,生成下轮迭代所需的修正值; 0049 所述第二寄存器组用于在每轮迭代的第一周期中保存所述加法器生成的所述下 轮迭代所需的修正值; 0050 所述控制逻辑组用于判断迭代是否全部完成,且当判断出迭代未全部完成时在每 轮迭代的第二周期中判断所述下轮迭代所需的修正值是否为0,若为0,将所述本轮迭代。

21、所 需的中间多项式的系数以及中间量分别作为下轮迭代所需的中间多项式的系数以及中间 量输出,若不为0,将所述本轮迭代所需的错误位置多项式的系数作为下轮迭代所需的中间 多项式的系数输出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量输出; 0051 所述第三寄存器组用于在每轮迭代的第二周期中输出本轮迭代所需的中间多项 式的系数和辅助计算的中间量,并保存下轮迭代所需的中间多项式的系数和辅助计算的中 间量; 0052 所述第二有限域乘法器组用于在每轮迭代的第二周期中对所述下轮迭代所需的 修正值和所述中间多项式的系数进行乘法运算; 0053 所述加法器组用于在每轮迭代的第二周期中对所述第一有限域乘法器。

22、组在每轮 迭代的第二周期中进行乘法运算后的结果和所述第二有限域乘法器组在每轮迭代的第二 周期中进行乘法运算后的结果进行加法运算,生成本轮迭代更新的所述错误位置多项式的 系数; 0054 所述选择器用于在每轮迭代的第一周期中选择所述伴随式输出寄存器组的输出, 说 明 书CN 102891689 A 4/11页 7 并在每轮迭代的第二周期中选择所述控制逻辑组的输出。 0055 优选地,所述伴随式输出寄存器组包括: 0056 奇数项伴随式寄存器组、偶数项伴随式寄存器组和移位寄存器组,其中: 0057 所述奇数项伴随式寄存器组用于输出奇数项伴随式的系数; 0058 所述偶数项伴随式寄存器组用于输出偶数。

23、项伴随式的系数; 0059 所述移位寄存器组用于接收所述奇数项伴随式的系数和所述偶数项伴随式的系 数并进行移位输出。 0060 优选地,所述控制逻辑组包括: 0061 第一控制逻辑和第二控制逻辑,其中: 0062 所述第一控制逻辑用于判断迭代是否全部完成,且当判断出迭代未全部完成时在 每轮迭代的第二周期中判断所述下轮迭代所需的修正值是否为0,且用于判断迭代是否全 部完成; 0063 所述第二控制逻辑用于在所述下轮迭代所需的修正值为0时,将所述本轮迭代所 需的中间多项式的系数以及中间量分别作为下轮迭代所需的中间多项式的系数以及中间 量输出,在所述下轮迭代所需的修正值不为0时,将所述本轮迭代所需的。

24、错误位置多项式 的系数作为下轮迭代所需的中间多项式的系数输出,并将下轮迭代所需的修正值作为下轮 迭代所需的中间量输出。 0064 从上述的技术方案可以看出,本发明实施例公开的一种错误位置多项式求解方法 及装置,相对于现有技术来说,可以实现的有益效果是: 0065 1、本申请提供的方案,在现有技术的基础上,提供了一种低延时的错误位置多项 式求解的IBM迭代电路。在电路的最长路径中插入了一个寄存器,将最长路径一分为二,关 键路径长度缩短为T 乘法器 +T 加法器(t+1) ,这样就大大降低了迭代电路的关键路径延时,使之能 够应用到高频数据传输中。 0066 同时,在插入一级寄存器之后如果不做任何修。

25、改,完成一次迭代的时间需要多达 4t个时钟周期,为了解决这个问题,本设计将迭代算法改进成t次,每轮输入2个伴随式的 系数,使伴随式的系数按照一轮两拍的方式进入移位寄存器组,这样迭代计算时间能够继 续维持在现有的2t个时钟周期不变。 0067 本发明中IBM迭代计算仅需要2t个时钟周期,关键路径长度为T 乘法器 +T 加法器(t+1) , 乘法器数量为2t+1个,均衡解决了面积和时序问题,具有较高的实用价值,不仅可用于高 速光通信系统中,还可用于其它高速通信系统和信息处理领域。 0068 2、本申请提供的方案,在现有技术的基础上,提供了一种面积紧凑型的错误位置 多项式求解的IBM迭代电路。在迭代。

26、过程中,两个周期输入一轮伴随式的系数,每轮输入两 个伴随式的系数,因此在该电路加入了选择器,用来分时复用有限域乘法器组,第一个周期 选择伴随式输出寄存器组的输出作为有限域乘法器的乘数,第二个周期选择控制逻辑组的 输出作为有限域乘法器的乘数,这样可以节省多达t+1个有限域乘法器,大大减少了电路 中乘法器的数量,节省了电路面积。 附图说 明 0069 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现 说 明 书CN 102891689 A 5/11页 8 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 申请中记载的一些实施例,对于本领域普通技术。

27、人员来讲,在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。 0070 图1为现有技术通用的IBM迭代算法流程图; 0071 图2为现有技术中对应IBM迭代算法的错误位置多项式求解电路; 0072 图3为本申请实施例提供的一种错误位置多项式求解方法流程图; 0073 图4为本申请实施例提供的另一种错误位置多项式求解方法流程图; 0074 图5为本申请实施例提供的又一种错误位置多项式求解方法流程图; 0075 图6为本申请实施例提供的又一种错误位置多项式求解方法流程图; 0076 图7为本申请实施例提供的一种错误位置多项式求解装置示意图; 0077 图8为本申请实施例提供的一种优化。

28、的乘法器结构示意图。 具体实施方式 0078 为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实 施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施 例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通 技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护 的范围。 0079 图3为本申请实施例提供的一种错误位置多项式求解方法流程图。 0080 参照图3所示,本申请实施例提供的一种错误位置多项式求解方法,包括如下步 骤: 0081 S100:在每轮迭代的第一周期中输入奇数项伴随式的系数和偶数。

29、项伴随式的系 数,计算下轮迭代所需的修正值; 0082 在本申请实施例中,步骤S100求解下轮迭代所需的修正值就相当于IBM迭代算法 中的第二步:计算当前迭代值对于牛顿恒等式的误差。 0083 在这里,奇数项伴随式和偶数项伴随式的系数是按照一轮两拍的方式进行输入 的,即在迭代过程中,每一轮迭代包含两个周期,在两个周期的第一周期输入一轮伴随式的 系数,每轮同时输入两个伴随式的系数,并且两个伴随式的系数为相邻的奇数项伴随式的 系数和偶数项伴随式的系数。 0084 S200:在每轮迭代的第二周期中判断修正值是否为0,并根据判断结果输出下轮 迭代所需的中间多项式的系数以及中间量; 0085 在本申请实。

30、施例中,按照IBM迭代算法,需要根据在第一周期中生成的下轮迭代 所需的修正值来修改求解错误位置多项式过程中需要的中间变量值,即中间多项式的系数 和中间量,具体的修正方式是根据修正值是否为0来确定的。 0086 S300:在每轮迭代的第二周期中根据修正值和本轮迭代所需的错误位置多项式的 系数、本轮迭代所需的中间多项式的系数以及中间量,计算下轮迭代所需的错误位置多项 式的系数。 0087 在本申请实施例中,每轮迭代的第一周期中提供下轮迭代所需的修正值,第二周 期中根据该修正值输出下轮迭代所需的中间位置多项式的系数和中间量,并在第二周期中 说 明 书CN 102891689 A 6/11页 9 根据。

31、上轮迭代生成的本轮迭代所需的中间位置多项式的系数和中间量以及下轮迭代所需 的修正值计算下轮迭代所需的错误位置多项式的系数。 0088 本申请实施例提供的方案,在现有技术的基础上,提供了一种低延时的错误位置 多项式求解的IBM迭代电路。在电路的最长路径中插入了一个寄存器,将最长路径一分为 二,关键路径长度缩短为T 乘法器 +T 加法器(t+1) ,这样就大大降低了迭代电路的关键路径延时,使 之能够应用到高频数据传输中。 0089 同时,在插入一级寄存器之后如果不做任何修改,完成一次迭代的时间需要多达 4t个时钟周期,为了解决这个问题,本设计将迭代算法改进成t次,每轮输入2个伴随式的 系数,使伴随。

32、式的系数按照一轮两拍的方式进入移位寄存器组,这样迭代计算时间能够继 续维持在现有的2t个时钟周期不变。 0090 本发明中IBM迭代计算仅需要2t个时钟周期,关键路径长度为T 乘法器 +T 加法器(t+1) , 乘法器数量为2t+1个,均衡解决了面积和时序问题,具有较高的实用价值,不仅可用于高 速光通信系统中,还可用于其它高速通信系统和信息处理领域。 0091 图4为本申请实施例提供的另一种错误位置多项式求解方法流程图。 0092 参照图4所示,本申请实施例提供的另一种错误位置多项式求解方法,在上述实 施例提供的错误位置多项式求解方法中,计算下轮迭代所需的修正值的方法,具体包括如 下步骤: 0。

33、093 S101:对奇数项伴随式的系数和对应的本轮迭代所需的错误位置多项式的系数进 行乘法运算; 0094 S102:对偶数项伴随式的系数和对应的本轮迭代所需的错误位置多项式的系数进 行乘法运算; 0095 在本申请实施例中,奇数项伴随式和偶数项伴随式的系数是按照一轮两拍的方式 进入移位寄存器组进行输入的,即在迭代过程中,每一轮迭代包含两个周期,在两个周期的 第一周期输入一轮伴随式的系数,每轮同时输入两个伴随式的系数,并且两个伴随式的系 数为相邻的奇数项伴随式的系数和偶数项伴随式的系数。 0096 S103:对两组乘法运算的结果进行加法运算,得到下轮迭代所需的修正值。 0097 根据IBM迭代。

34、算法,需要对两组乘法运算结果相加,得到的值即为下轮迭代所需 的修正值,在每轮迭代的第一周期中将该值从加法器中输出到寄存器组中。 0098 作为优选,在迭代过程中,计算下轮迭代所需的修正值的方法,具体以如下公式进 行说明: 0099 设 (k) (x)是待求的差错位置多项式, (k) (x)是辅助计算的中间多项式, (k+1) 是连续迭代前后两个错误位置多项式的差值,这里称为修正值,k代表迭代计算的次数,l (k) 表示多项式 (k) (x)的阶, (k) 是辅助计算的中间量,迭代步骤如下: 0100 初始值: (0) (x)=1; (0) (x)=1;l (0) =0; (0) =1;k=0 。

35、0101 则计算下轮迭代所需的修正值,即计算当前迭代值对于牛顿恒等式的误差,公式 表示为: 0102 0103 图5为本申请实施例提供的又一种错误位置多项式求解方法流程图。 说 明 书CN 102891689 A 7/11页 10 0104 参照图5所示,本申请实施例提供的又一种错误位置多项式求解方法,在上述实 施例提供的错误位置多项式求解方法中,根据判断结果输出下轮迭代所需的中间多项式的 系数以及中间量的方法,具体包括如下步骤: 0105 S201:若修正值为0,将本轮迭代所需的中间多项式的系数以及中间量分别作为 下轮迭代所需的中间多项式的系数以及中间量输出; 0106 S202:若修正值不。

36、为0,将本轮迭代所需的错误位置多项式的系数作为下轮迭代 所需的中间多项式的系数输出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量输 出。 0107 在本申请实施例中,根据IBM迭代算法,需要根据在第一周期中生成的下轮迭代 所需的修正值来修改求解错误位置多项式过程中需要的中间变量值,即中间多项式的系数 和中间量,具体的修正方式是根据修正值是否为0来确定的。 0108 作为优选,在迭代过程中,根据判断得到的下轮迭代所需的修正值是否为0的情 况,输出的下轮迭代所需的中间多项式的系数以及中间量的方法,具体以如下公式进行说 明: 0109 当 (k+1) (x)=0 or 2l (k) k时: 01。

37、10 (k+1) (x)=x (k) (x) 0111 l (k+1) l (k) 0112 (k+1) = (k) 0113 k=k+1 0114 而当 (k+1) (x)0 and 2l (k) k时: 0115 (k+1) (x)= (k) (x) 0116 l (k+1) k+1-l (k) 0117 (k+1) = (k+1) 0118 k=k+1 0119 图6为本申请实施例提供的又一种错误位置多项式求解方法流程图。 0120 参照图6所示,本申请实施例提供的又一种错误位置多项式求解方法,在上述实 施例提供的错误位置多项式求解方法中,计算下轮迭代所需的错误位置多项式的系数的方 法,。

38、具体包括如下步骤: 0121 S301:对下轮迭代所需的修正值和本轮迭代所需的中间多项式的系数进行乘法运 算; 0122 S302:对本轮迭代所需的错误位置多项式的系数和本轮迭代所需的中间量进行乘 法运算; 0123 S303:对两组乘法运算的结果进行加法运算,得到下轮迭代所需的错误位置多项 式的系数。 0124 作为优选,根据IBM迭代算法,在上述实施例的基础之上,本实施例的计算产生满 足当前牛顿等式的下轮迭代所需的错误位置多项式的系数的方法,具体以如下公式进行说 明: 0125 (k+1) (x)= (k) (k) (x)+ (k+1) (k) (x)x 0126 本申请实施例提供的方案,。

39、在现有技术的基础上,提供了一种面积紧凑型的错误 说 明 书CN 102891689 A 10 8/11页 11 位置多项式求解的IBM迭代电路。在迭代过程中,两个周期输入一轮伴随式的系数,每轮输 入两个伴随式的系数,因此在该电路加入了选择器,用来分时复用有限域乘法器组,第一个 周期选择伴随式输出寄存器组的输出作为有限域乘法器的乘数,第二个周期选择控制逻辑 组的输出作为有限域乘法器的乘数,这样可以节省多达t+1个有限域乘法器,大大减少了 电路中乘法器的数量,节省了电路面积。 0127 图7为本申请实施例提供的一种错误位置多项式求解装置示意图。 0128 参照图7所示,本申请还提供一种错误位置多项。

40、式求解装置,在本申请实施例中, 该装置包括: 0129 伴随式输出寄存器组1、第一寄存器组2、第二寄存器组3、第三寄存器组4、第一有 限域乘法器组5、第二有限域乘法器组6、加法器7,加法器组8、控制逻辑组9和选择器10, 其中: 0130 伴随式输出寄存器组1用于在每轮迭代的第一周期中输出本轮迭代所需的奇数 项伴随式的系数和偶数项伴随式的系数; 0131 第一寄存器组2用于在每轮迭代的第一周期中输出本轮迭代所需的错误位置多 项式的系数,并在每轮迭代的第二周期中保存本轮迭代更新的错误位置多项式的系数; 0132 第一有限域乘法器组5用于在每轮迭代的第一周期中对奇数项伴随式的系数和 对应的本轮迭代。

41、所需的错误位置多项式的系数进行乘法运算,对偶数项伴随式的系数和对 应的本轮迭代所需的错误位置多项式的系数进行乘法运算,并在每轮迭代的第二周期中对 本轮迭代所需的错误位置多项式的系数和本轮迭代所需的中间量进行乘法运算; 0133 加法器7用于在每轮迭代的第一周期中对第一有限域乘法器组3在每轮迭代的第 一周期中进行乘法运算后的结果进行加法运算,生成下轮迭代所需的修正值; 0134 第二寄存器组3用于在每轮迭代的第一周期中保存加法器7生成的下轮迭代所需 的修正值; 0135 控制逻辑组9用于判断迭代是否全部完成,且当判断出迭代未全部完成时在每轮 迭代的第二周期中判断下轮迭代所需的修正值是否为0,若为。

42、0,将本轮迭代所需的中间多 项式的系数以及中间量分别作为下轮迭代所需的中间多项式的系数以及中间量输出,若不 为0,将本轮迭代所需的错误位置多项式的系数作为下轮迭代所需的中间多项式的系数输 出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量输出; 0136 第三寄存器组4用于在每轮迭代的第二周期中输出本轮迭代所需的中间多项式 的系数和辅助计算的中间量,并保存下轮迭代所需的中间多项式的系数和辅助计算的中间 量; 0137 第二有限域乘法器组6用于在每轮迭代的第二周期中对下轮迭代所需的修正值 和中间多项式的系数进行乘法运算; 0138 加法器组8用于在每轮迭代的第二周期中对第一有限域乘法器组5在每。

43、轮迭代的 第二周期中进行乘法运算后的结果和第二有限域乘法器组6在每轮迭代的第二周期中进 行乘法运算后的结果进行加法运算,生成本轮迭代更新的错误位置多项式的系数; 0139 选择器10用于在每轮迭代的第一周期中选择伴随式输出寄存器组1的输出,并在 每轮迭代的第二周期中选择控制逻辑组9的输出。 0140 参照图7所示,上述实施例中的伴随式输出寄存器组1包括: 说 明 书CN 102891689 A 11 9/11页 12 0141 奇数项伴随式寄存器组11、偶数项伴随式寄存器组12和移位寄存器组13,其中: 0142 奇数项伴随式寄存器组11用于输出奇数项伴随式的系数; 0143 偶数项伴随式寄存。

44、器组12用于输出偶数项伴随式的系数; 0144 移位寄存器组13用于接收奇数项伴随式的系数和偶数项伴随式的系数并进行移 位输出。 0145 参照图7所示,上述实施例中的控制逻辑组9包括: 0146 第一控制逻辑91和第二控制逻辑92,其中: 0147 第一控制逻辑91用于判断迭代是否全部完成,且当判断出迭代未全部完成时在 每轮迭代的第二周期中判断下轮迭代所需的修正值是否为0,且用于判断迭代是否全部完 成; 0148 第二控制逻辑92用于在下轮迭代所需的修正值为0时,将本轮迭代所需的中间 多项式的系数以及中间量分别作为下轮迭代所需的中间多项式的系数以及中间量输出,在 下轮迭代所需的修正值不为0时。

45、,将本轮迭代所需的错误位置多项式的系数作为下轮迭代 所需的中间多项式的系数输出,并将下轮迭代所需的修正值作为下轮迭代所需的中间量输 出。 0149 下面以72位错误位置多项式求解的IBM迭代过程为例,对上述实施例提供的错误 位置多项式求解装置做进一步说明: 0150 奇数项伴随式寄存器组11和偶数项伴随式寄存器组12接收外部144个伴随式的 值并保存,然后奇数项伴随式和偶数项伴随式按照一轮两拍的方式进入IBM迭代的移位寄 存器组13; 0151 迭代采用一轮两拍的方式,即两个周期(下称第一周期和第二周期)执行一次迭 代,迭代过程通过信号shift_en的高低电平的周期性转换来控制选择器10的输。

46、出,第一周 期选择移位寄存器组13,第二周期选择控制逻辑组9,这样就实现了分时复用有限域乘法 器组的目的; 0152 在第一周期时间内,将有限域乘法器组5的值送入有限域加法器7做有限域的加 法,将加得的值存入第二寄存器组3; 0153 在第二周期时间内,第一控制逻辑91和第二控制逻辑92分别判断第二寄存器组 3的值,若为0,则第二控制逻辑92控制第三寄存器组4做移位操作;若不为0,则第二控制 逻辑92控制第一寄存器组2将值送入第三寄存器组4,同时第一控制逻辑91根据迭代次数 计算出新的值输出。第二寄存器组3和第三寄存器组4通过有限域乘法器6相乘(假设结 果为R1),第一寄存器组2和第一控制逻辑。

47、91的输出通过有限域乘法器5相乘(假设结果为 R2),然后R1和R2通过有限域加法器组8相加,得到的和送入第一寄存器组2中寄存; 0154 当迭代次数等于72次时,将第一寄存器组2中的值作为模块的最终结果输出。 0155 此外,由于IBM迭代电路中采用大量的有限域乘法器,为了有效的降低面积,还可 以采用一种优化的乘法器结构。 0156 图8为本申请实施例提供的一种优化的乘法器结构示意图。 0157 参照图8所示,根据本发明的二进制BCH码译码器,对于有限域乘法器面积的优 化,可以采用14域转7域的方法,方法如下,在有限域GF(2 m )中的元素A(x)和B(x)可以 用如下多项式表示: 说 明。

48、 书CN 102891689 A 12 10/11页 13 0158 A(x)=a m-1 x m-1 +a m-2 x m-2 +a 1 x+a 0 ,a i GF(2) 0159 B(x)=b m-1 x m-1 +b m-2 x m-2 +b 1 x+b 0 ,b i GF(2) 0160 一般的乘法器使用多项式相乘,然后在对本原多项式进行取模实现。 0161 C(x)=A(x)B(x)=c 2m-2 x 2m-2 +c 2m-3 x 2m-3 +c 1 x+c 0 ,c i GF(2) 0162 C(x)=C(x)mod(p(x) 0163 其中p(x)是域GF(2 m )上的本原多项式 0164 这里考虑使用小次数多次乘法来代替高次乘法。比如14位的乘法器,直接进 行计算他的资源消耗是14*14的数量级,实际计算得到14位乘法器使用的与门数量是 14*14=196个,使用的异或门个数是13*13+64=233个,如果使用三个7位的乘法器来实 现,那么数量级是7*7*3。实际实现时使用的与门数是7*7*3=147,使用的异或门个。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 基本电子电路


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1