CN109981116A - Bch码中bm算法的求逆电路、实现方法及应用 - Google Patents
Bch码中bm算法的求逆电路、实现方法及应用 Download PDFInfo
- Publication number
- CN109981116A CN109981116A CN201910226004.4A CN201910226004A CN109981116A CN 109981116 A CN109981116 A CN 109981116A CN 201910226004 A CN201910226004 A CN 201910226004A CN 109981116 A CN109981116 A CN 109981116A
- Authority
- CN
- China
- Prior art keywords
- register group
- multiplier
- register
- circuit
- stored
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] codes
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
本发明公开了BCH码中BM算法的求逆电路、实现方法及应用,涉及纠错译码技术领域。一种BCH码中BM算法的求逆电路,该求逆电路用以计算伽罗华域GF(2m)中元素β逆元,包括如下结构:一个或两个寄存器组,每个寄存器组包括m个寄存器,所述寄存器能够存储求逆过程中与元素β关联的数据;一个乘法器M,求逆电路中所有的乘法复用该乘法器M,由乘法器M计算的数据输入到寄存器进行存储;辅助电路,用以计算求逆过程中与元素β关联的数据;计算得到的数据输入到乘法器进行计算或输入到寄存器进行存储。本发明在兼顾性能的基础上,减小了求逆电路的面积,与用ROM查表法实现求逆相比,显著地节省了资源。
Description
技术领域
本发明涉及纠错译码技术领域,具体涉及一种BCH码中BM算法的实现。
背景技术
BCH码是一种高效线性分组码,拥有非常优良的纠错功能,可以提高通信系统,自动控制和存储器的可靠性,广泛应用于通信系统和消费电子等领域。参见图1所示,BCH解码包含三个步骤:伴随多项式计算,解关键方程和钱搜索。其中,解关键方程主要根据伴随多项式计算出错误多项式,是整个译码过程中的难点和硬件开销最大的部分。针对BCH编译码的实现,目前解关键方程可以通过多种算法实现,在所有的译码算法中常用的有:Berlekamp-Massey迭代算法(简称BM算法)、iBM(Blahut)算法、iBM(Berlekamp)算法、riBM算法、欧几里得(Euclidean)算法和Euclidean(folded)算法等。BM算法是一种迭代算法,相关背景技术可参见参考文献1:《差错控制编码》(Shu.Lin,DanielJ.Cpstello Jr著,晏坚,何元智,潘亚汉等译,机械工业出版社)。
针对主要的常用算法,不考虑乘法器复用情况下几种主要算法的资源消耗如下表所示:
算法 | 寄存器(组) | 乘法器 | 时间周期 |
BM | 4t+2 | 2t+1 | t |
iBM(Blahut) | 4t+2 | 3t+3 | 3t |
iBM(Berlekamp) | 6t+2 | 5t+3 | 2t |
riBM | 6t+2 | 6t+2 | 2t |
RiBM | 6t+2 | 6t+2 | 2t |
Euclidean | 4t+4 | 8t+8 | 2t |
Euclidean(folded) | 10t+5 | 2t+1 | 12t |
表中,t表示最大可纠错误,其中BM算法没有考虑求逆电路的开销。
通过上述表可知,BM算法的资源消耗是最少的,但由于BM算法还包含一个求逆电路以对伽罗华域GF(2m)上的任一元素求逆。求逆可用ROM查表方式实现,但用ROM往往需占用很大的芯片资源:其电路规模和m*2m成正比,随着m的增大,其电路规模过于庞大,导致系统规模过大。因而目前在解关键方程方向,主要集中于利用无求逆的算法去实现。
发明内容
本发明的目的在于:克服现有技术的不足,提供了一种BCH码中BM算法的求逆电路、实现方法及应用,在兼顾性能的基础上,减小了求逆电路的面积,与用ROM查表法实现求逆相比,节省了资源。
为实现上述目标,本发明提供了如下技术方案:
一种BCH码中BM算法的求逆电路,该求逆电路用以计算伽罗华域GF(2m)中元素β逆元,所述元素β满足公式该求逆电路包括如下结构:
寄存器组模块,当m-1是2的幂次方时,设置一个寄存器组R1,其他情况下设置两个寄存器组:寄存器组R1和寄存器组R2;
每个寄存器组包括m个寄存器,所述寄存器能够存储求逆过程中与元素β关联的数据;
乘法器模块,包括一个乘法器M,求逆电路中所有的乘法复用该乘法器M,由乘法器M计算的数据输入到寄存器进行存储;
辅助电路模块,包括多个辅助电路,所述辅助电路是由异或门搭建的组合电路,用以计算求逆过程中与元素β关联的数据;计算得到的数据输入到乘法器进行计算或输入到寄存器进行存储。
进一步,通过所述寄存器存储数据βi和γj;其中,i表示寄存器组R1更新次序;j表示寄存器组R2更新次序;βi表示寄存器组R1存储的数据;γj表示寄存器组R2存储的数据。
进一步,通过所述辅助电路计算数据和其中,i表示寄存器组R1更新次序;表示当前乘法因子中最大的幂指数,n1表示的幂指数;表示当前乘法因子中最小的幂指数,n2表示的幂指数。
本发明还提供了一种根据前述求逆电路的实现方法,包括步骤:
步骤100,将β1存放在寄存器组R1中,令n1=m-1,n2=1,i=1,j=0,n=n1-n2+1,执行步骤200;
步骤200,判定n%2?=0,判定为是的情况下,执行步骤310;
步骤310,令n1=(n1+n2+1)/2,通过辅助电路计算和通过乘法器计算并将βi+1存放在寄存器组R1中;然后,令n1=n1-1,n2=0,i++,n=n1-n2+1,执行步骤400;
步骤400,判定n?=0,判定为是的情况下,执行步骤500;判定为否的情况下,执行步骤200;
步骤500,对元素β1的求逆结束。
进一步,所述步骤200中,判定n%2?=0,判定为否的情况下,执行步骤320;
步骤320,判定寄存器组R2是否为空,判定为空的情况下,执行步骤321,判定为不为空的情况下,执行步骤322;
步骤321,令通过辅助电路计算,并将γj+1存放在寄存器组R2中;然后,n2++;j++,n=n1-n2+1,执行步骤400;
步骤322,乘法器计算通过辅助电路计算,并将γj+1存放在寄存器组R2中;然后,n2++;j++,n=n1-n2+1,执行步骤400。
优选的,所述求逆电路的伽罗华域GF(2m)取为GF(214)。
优选的,通过5个时钟周期求出β1出的逆元包括如下步骤,
第0个时钟周期,开始运算,寄存器组R1存储β1,寄存器组R2为空;通过辅助电路生成和乘法器计算将结果β2存储于寄存器组R1中,同时,辅助电路生成将结果γ1存储到寄存器组R2中;
第1个时钟周期,寄存器组R1存储β2,寄存器组R2存储γ1;通过辅助电路生成乘法器计算将结果β3存储于寄存器组R1中;
第2个时钟周期,寄存器组R1存储β3,寄存器组R2存储γ1;通过乘法器计算将结果γ2存储到寄存器组R2中;
第3个时钟周期,寄存器组R1存储β3,寄存器组R2存储γ2;通过辅助电路生成和乘法器计算将结果β4存储于寄存器组R1中;
第4个时钟周期,寄存器组R1存储β4,寄存器组R2存储γ2;通过乘法器计算将结果存放到寄存器组R2中;
第5个时钟周期,寄存器组R2存储结束运算。
本发明还提供了一种BCH码中BM算法的实现方法,所述BM算法包含前述的求逆电路。
进一步,所述BM算法包括k个乘法器,k为大于等于1的整数;在迭代运算时,分时复用前述乘法器以减少乘法器的数量。
本发明还提供了一种BCH解码方法,包括伴随多项式计算步骤,解关键方程步骤和钱搜索步骤,利用前述的BM方法解关键方程。
本发明由于采用以上技术方案,与现有技术相比,作为举例,具有以下的优点和积极效果:
1)利用伽罗华域GF(2m)的一些性质,只利用1组或者2组寄存器,一个乘法器和辅助电路来实现求逆电路,相对于通过查找表实现求逆电路,能显著减小电路规模。
2)考虑到解关键方程步骤在整个解码过程中相对时间很少,通过分时复用乘法器来增加解关键方程周期,从而在对解码整体性能影响很小的基础上进一步降低电路规模。
附图说明
图1为现有技术中常用的BCH解码过程的流程示意图。
图2为本发明实施例提供的求逆电路的设计策略流程图。
图3为本发明实施例提供的基于GF(214)求逆电路时序图。
图4为本发明实施例提供的基于GF(214)的求逆电路的模块结构图。
图5为本发明实施例提供的BM算法的实现方法的流程图。
附图标记说明:
寄存器组100,辅助电路200,乘法器300。
具体实施方式
以下结合附图和具体实施例对本发明公开的BCH码中BM算法的求逆电路、实现方法及应用作进一步详细说明。应当注意的是,下述实施例中描述的技术特征或者技术特征的组合不应当被认为是孤立的,它们可以被相互组合从而达到更好的技术效果。在下述实施例的附图中,各附图所出现的相同标号代表相同的特征或者部件,可应用于不同实施例中。因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
需说明的是,本说明书所附图中所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定发明可实施的限定条件,任何结构的修饰、比例关系的改变或大小的调整,在不影响发明所能产生的功效及所能达成的目的下,均应落在发明所揭示的技术内容所能涵盖的范围内。本发明的优选实施方式的范围包括另外的实现,其中可以不按所述的或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
实施例
一种BCH码中BM算法的求逆电路,该求逆电路用以计算伽罗华域GF(2m)中元素β逆元,所述元素β满足公式该求逆电路包括如下结构:
寄存器组模块,当m-1是2的幂次方时,设置一个寄存器组R1,其他情况下设置两个寄存器组,包括寄存器组R1和寄存器组R2。
每个寄存器组包括m个寄存器,所述寄存器能够存储求逆过程中与元素β关联的数据。具体的,通过所述寄存器可以存储数据βi和γj。其中,i表示寄存器组R1更新次序;j表示寄存器组R2更新次序;βi表示寄存器组R1存储的数据;γj表示寄存器组R2存储的数据。
乘法器模块,包括一个乘法器M,求逆电路中所有的乘法复用该乘法器M,由乘法器M计算的数据输入到寄存器进行存储。
辅助电路模块,包括多个辅助电路,所述辅助电路是由异或门搭建的组合电路,用以计算求逆过程中与元素β关联的数据;计算得到的数据输入到乘法器进行计算或输入到寄存器进行存储。通过所述辅助电路可以计算数据和其中,i表示寄存器组R1更新次序;表示当前乘法因子中最大的幂指数元素,n1表示的幂指数;表示当前乘法因子中最小的幂指数元素,n2表示的幂指数。
对于BM算法,简要描述其实现原理和硬件方案。
BM算法是一种迭代算法,同时考虑到在有限域GF(2m)上多项式f(x),有
f2(x)=f(x2) (公式一)
可以采用简化的迭代算法,大致流程大致如下(详细推导过程参考文献1)。
令第μ次的迭代所确定的最低次数多项式为
为了确认σ(μ+1)(x),需要计算dμ
那么如果dμ=0,那么
σ(μ+1)(x)=σ(μ)(x)
否则:
其中,p是指第p次迭代结果,其满足于dp≠0,并且2p-lp有最大值。
经过t次迭代后,得到错误多项式σ(x)。
通过上面的公式可以得到,其主要的乘法运算集中在求dμ和σ(μ+1)(x),还需要求逆电路去实现
本实施例提出的前述求逆电路是基于以下原理;
在GF(2m)域中任意元素β满足下面公式:
把dp代入β得到:
即
通过上述公式实现的求逆电路,在不考虑到求的实现下,需要m-2次乘法。乘法次数还是过多,导致解关键方程时间过长或者开销过大。此时,再利用公式一,可以使得求逆电路的次数按照2的对数方式减少。利用数学归纳法,公式一能够推导出下面公式:
本实施例中,求逆电路主要由寄存器组模块,乘法器模块和辅助电路模块构成。
当m-1是2的幂次方时候,只需要一个寄存器组R1,其他情况,需要2个寄存器组R1,R2。
求逆电路的设计策略参见图2所示。
结合图2,求逆的步骤具体包括如下步骤:
步骤100,将β1存放在寄存器组R1中,令n1=m-1,n2=1,i=1,j=0,n=n1-n2+1,执行步骤200。
步骤200,判定n%2?=0,判定为是的情况下,执行步骤310;判定为否的情况下,执行步骤320。
步骤310,令n1=(n1+n2+1)/2,通过辅助电路计算和通过乘法器计算并将βi+1存放在寄存器组R1中;然后,令n1=n1-1,n2=0,i++,n=n1-n2+1,执行步骤400。
步骤320,判定寄存器组R2是否为空,判定为空的情况下,执行步骤321,判定为不为空的情况下,执行步骤322。
步骤321,令通过辅助电路计算,并将γj+1存放在寄存器组R2中;然后,n2++;j++,n=n1-n2+1,执行步骤400。
步骤322,乘法器计算通过辅助电路计算,并将γj+1存放在寄存器组R2中;然后,n2++;j++,n=n1-n2+1,执行步骤400。
步骤400,判定n?=0,判定为是的情况下,执行步骤500;判定为否定情况下,执行步骤200;
步骤500,对元素β1的求逆结束。
求逆电路中,寄存器主要用于存储βi和γj,辅助电路主要用于计算和所有的乘法复用一个乘法器。
作为典型方式的举例而非限制,下面以GF(214)的求逆电路来详细讲解本实施例中求逆电路的实现。
基于GF(214)的BCH编解码大量应用于存储器控制模块,而控制模块的主要资源消耗在BCH编解码的实现上,所以一个好的BCH编解码实现会决定到整体的性能。
根据上述设计策略,本实施例提供的求逆电路能够在5个时钟周期内求出β1出的逆元时序流程图参见图3所示。
结合图3,求逆的具体步骤包括如下:
第0个时钟周期,开始运算,寄存器组R1存储β1,寄存器组R2为空;通过辅助电路生成和乘法器计算将结果β2存储于寄存器组R1中,同时,辅助电路生成将结果γ1存储到寄存器组R2中。
第1个时钟周期,寄存器组R1存储β2,寄存器组R2存储γ1;通过辅助电路生成乘法器计算将结果β3存储于寄存器组R1中。
第2个时钟周期,寄存器组R1存储β3,寄存器组R2存储γ1;通过乘法器计算将结果γ2存储到寄存器组R2中。
第3个时钟周期,寄存器组R1存储β3,寄存器组R2存储γ2;通过辅助电路生成和乘法器计算将结果β4存储于寄存器组R1中。
第4个时钟周期,寄存器组R1存储β4,寄存器组R2存储γ2;通过乘法器计算将结果存放到寄存器组R2中。
第5个时钟周期,寄存器组R2存储结束运算。
求逆电路的硬件电路结构框图参见图4所示。
所述逆电路包括:
寄存器组模块,其包括寄存器组R1和寄存器组R2,每个寄存器组包括m个寄存器。开始时,寄存器组R1存储β1,寄存器组R2为空。求逆过程中通过寄存器存储数据βi和γj。其中,i表示寄存器组R1更新次序;j表示寄存器组R2更新次序;βi表示寄存器组R1存储的数据;γj表示寄存器组R2存储的数据。
乘法器模块,包括一个乘法器M,求逆电路中所有的乘法复用该乘法器M,由乘法器M计算的数据输入到寄存器进行存储。
辅助电路模块,包括4个辅助电路。
所述辅助电路模块的实现原理如下:
假设
其中α是GF(214)上的本原元。
利用公式三,那么
由于本原元α是本原多项式x14+x12+x11+x+1=0的根,所以上面公式可以进一步化为一个最大次数不超过13的多项式。
例如,的结果如下:
t0=βi,0^βi,3^βi,4^βi,7^βi,9^βi,10^βi,11^βi,12
t1=βi,1^βi,3^βi,4^βi,5^βi,6^βi,7^βi,8^βi,9^βi,12
t2=βi,1^βi,3^βi,5^βi,6^βi,11
t3=βi,1^βi,2^βi,4^βi,5^βi,7^βi,9^βi,11^βi,13
t4=βi,2^βi,5^βi,6^βi,11^βi,12
t5=βi,1^βi,3^βi,5^βi,6^βi,7^βi,8^βi,9^βi,10^βi,10
t6=βi,1^βi,2^βi,3^βi,5^βi,9^βi,10^βi,12^βi,13
t7=βi,1^βi,3^βi,4^βi,5^βi,6^βi,11^βi,13
t8=βi,1^βi,3^βi,5^βi,6^βi,10^βi,11
t9=βi,3^βi,4^βi,5^βi,6^βi,7^βi,9^βi,10^βi,12^βi,13
t10=βi,2^βi,4^βi,5^βi,6^βi,8^βi,9^βi,10^βi,11^βi,12
t11=βi,3^βi,4^βi,5^βi,6^βi,8^βi,9^βi,12
t12=βi,2^βi,4^βi,7^βi,11^βi,12
t13=βi,2^βi,4^βi,5^βi,12
可以看出,辅助电路主要是由异或门搭建的组合电路,资源消耗很少。由辅助电路计算得到的数据输入到乘法器进行计算或输入到寄存器进行存储。
作为举例而非限制,上述求逆电路在22nm的工艺下,其综合面积是696μm2,其中乘法器的面积是298μm2;而通过查找表实现方案需要一个求逆ROM,此ROM为16383x14,面积为19697μm2,相对于通过ROM实现的求逆,此种方案缩小了很多。
同时,通过求逆电路的综合面积和乘法器面积的对比,可知此求逆电路只消耗2.3个乘法器的面积,用此法实现的基于BM算法解关键方程,比基于其他算法实现的解关键方程的面积,也有显著的优势。
需要说明的是,上述求逆电路方案是用5个时钟周期才完成求逆运算,相对于ROM实现只需要1个时钟周期完成求逆来说,所需时间增加。但考虑到解关键方程在整个BCH解码过程中所需时间相对较少,同时考虑到由于乘法复用每次迭代也需要多个周期,所以多个周期求逆,并不会对整个解码过程的时间有太大影响。
本发明的另一实施例,还提供了一种BCH码中BM算法的实现方法,所述BM算法包含前述的求逆电路。
所述BM算法包括k个乘法器,k为大于等于1的整数。在迭代运算时,分时复用前述乘法器以减少乘法器的数量,其实现方案流程参见图5所示。
结合图5可以看出,在求dμ和σ(μ+1)(x)的时候,通过复用乘法器,可以使得乘法器的数量成倍减小。具体k值的选取,本领域技术人员可以根据需要综合考虑面积,性能等因素进行适应性调整和设置。
其他技术特征参见前述实施例,在此不再赘述。
本发明的另一实施例,还提供了一种BCH解码方法。BCH解码方法包括伴随多项式计算步骤,解关键方程步骤和钱搜索步骤。其中,利用前述的实施例中的BM方法解关键方程。
其他技术特征参见前述实施例,在此不再赘述。
在上面的描述中,本发明的公开内容并不旨在将其自身限于这些方面。而是,在本公开内容的目标保护范围内,各组件可以以任意数目选择性地且操作性地进行合并。另外,像“包括”、“囊括”以及“具有”的术语应当默认被解释为包括性的或开放性的,而不是排他性的或封闭性,除非其被明确限定为相反的含义。所有技术、科技或其他方面的术语都符合本领域技术人员所理解的含义,除非其被限定为相反的含义。在词典里找到的公共术语应当在相关技术文档的背景下不被太理想化或太不实际地解释,除非本公开内容明确将其限定成那样。本发明领域的普通技术人员根据上述揭示内容做的任何变更、修饰,均属于权利要求书的保护范围。
Claims (10)
1.一种BCH码中BM算法的求逆电路,该求逆电路用以计算伽罗华域GF(2m)中元素β逆元,所述元素β满足公式其特征在于包括如下结构:
寄存器组模块,当m-1是2的幂次方时,设置一个寄存器组R1,其他情况下设置两个寄存器组,包括寄存器组R1和寄存器组R2;
每个寄存器组包括m个寄存器,所述寄存器能够存储求逆过程中与元素β关联的数据;
乘法器模块,包括一个乘法器M,求逆电路中所有的乘法复用该乘法器M,由乘法器M计算的数据输入到寄存器进行存储;
辅助电路模块,包括多个辅助电路,所述辅助电路是由异或门搭建的组合电路,用以计算求逆过程中与元素β关联的数据;计算得到的数据输入到乘法器进行计算或输入到寄存器进行存储。
2.根据权利要求1所述的求逆电路,其特征在于:通过所述寄存器存储数据βi和γj;其中,
i表示寄存器组R1更新次序;
j表示寄存器组R2更新次序;
βi表示寄存器组R1存储的数据;
γj表示寄存器组R2存储的数据。
3.根据权利要求1或2所述的求逆电路,其特征在于:通过所述辅助电路计算数据和其中,
i表示寄存器组R1更新次序;
表示当前乘法因子中最大的幂指数,n1表示的幂指数;
表示当前乘法因子中最小的幂指数,n2表示的幂指数。
4.一种根据权利要求1所述求逆电路的实现方法,其特征在于包括步骤:
步骤100,将β1存放在寄存器组R1中,令n1=m-1,n2=1,i=1,j=0,n=n1-n2+1,执行步骤200;
步骤200,判定n%2?=0,判定为是的情况下,执行步骤310;
步骤310,令n1=(n1+n2+1)/2,通过辅助电路计算和通过乘法器计算并将βi+1存放在寄存器组R1中;然后,令n1=n1-1,n2=0,i++,n=n1-n2+1,执行步骤400;
步骤400,判定n?=0,判定为是的情况下,执行步骤500;判定为否的情况下,执行步骤200;
步骤500,对元素β1的求逆结束。
5.根据权利要求4所述的方法,其特征在于:所述步骤200中,判定n%2?=0,判定为否的情况下,执行步骤320;
步骤320,判定寄存器组R2是否为空,判定为空的情况下,执行步骤321,判定为不为空的情况下,执行步骤322;
步骤321,令 通过辅助电路计算,并将γj+1存放在寄存器组R2中;然后,n2++;j++,n=n1-n2+1,执行步骤400;
步骤322,乘法器计算 通过辅助电路计算,并将γj+1存放在寄存器组R2中;然后,n2++;j++,n=n1-n2+1,执行步骤400。
6.根据权利要求4或5所述的方法,其特征在于:所述求逆电路的伽罗华域GF(2m)取为GF(214)。
7.根据权利要求6所述的方法,其特征在于:通过5个时钟周期求出β1出的逆元包括如下步骤,
第0个时钟周期,开始运算,寄存器组R1存储β1,寄存器组R2为空;通过辅助电路生成和乘法器计算将结果β2存储于寄存器组R1中,同时,辅助电路生成将结果γ1存储到寄存器组R2中;
第1个时钟周期,寄存器组R1存储β2,寄存器组R2存储γ1;通过辅助电路生成乘法器计算将结果β3存储于寄存器组R1中;
第2个时钟周期,寄存器组R1存储β3,寄存器组R2存储γ1;通过乘法器计算将结果γ2存储到寄存器组R2中;
第3个时钟周期,寄存器组R1存储β3,寄存器组R2存储γ2;通过辅助电路生成和乘法器计算将结果β4存储于寄存器组R1中;
第4个时钟周期,寄存器组R1存储β4,寄存器组R2存储γ2;通过乘法器计算将结果存放到寄存器组R2中;
第5个时钟周期,寄存器组R2存储结束运算。
8.一种BCH码中BM算法的实现方法,其特征在于:所述BM算法包含权利要求1所述的求逆电路。
9.根据权利要求8所述的方法,其特征在于:所述BM算法包括k个乘法器,k为大于等于1的整数;在迭代运算时,分时复用前述乘法器以减少乘法器的数量。
10.一种BCH解码方法,包括伴随多项式计算步骤,解关键方程步骤和钱搜索步骤,其特征在于:利用权利要求8或9所述的BM方法解关键方程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910226004.4A CN109981116B (zh) | 2019-03-25 | 2019-03-25 | Bch码中bm算法的求逆电路、实现方法及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910226004.4A CN109981116B (zh) | 2019-03-25 | 2019-03-25 | Bch码中bm算法的求逆电路、实现方法及应用 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109981116A true CN109981116A (zh) | 2019-07-05 |
CN109981116B CN109981116B (zh) | 2023-04-18 |
Family
ID=67080365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910226004.4A Active CN109981116B (zh) | 2019-03-25 | 2019-03-25 | Bch码中bm算法的求逆电路、实现方法及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109981116B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348518A (ja) * | 1993-06-08 | 1994-12-22 | Fujitsu Ten Ltd | 誤り訂正回路 |
US20090049366A1 (en) * | 2007-08-13 | 2009-02-19 | Kabushiki Kaisha Toshiba | Memory device with error correction system |
US20100205235A1 (en) * | 2007-11-15 | 2010-08-12 | Anritsu Corporation | M-sequence generator, providing method thereof, and random error generating device in which m-sequence generator is used |
CN103903047A (zh) * | 2014-03-27 | 2014-07-02 | 华中科技大学 | 一种适用于rfid安全通信的椭圆曲线加密协处理器 |
CN107204782A (zh) * | 2017-04-10 | 2017-09-26 | 北京大学 | 一种bch译码器及生成该译码器的编译器的实现方法 |
-
2019
- 2019-03-25 CN CN201910226004.4A patent/CN109981116B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06348518A (ja) * | 1993-06-08 | 1994-12-22 | Fujitsu Ten Ltd | 誤り訂正回路 |
US20090049366A1 (en) * | 2007-08-13 | 2009-02-19 | Kabushiki Kaisha Toshiba | Memory device with error correction system |
US20100205235A1 (en) * | 2007-11-15 | 2010-08-12 | Anritsu Corporation | M-sequence generator, providing method thereof, and random error generating device in which m-sequence generator is used |
CN103903047A (zh) * | 2014-03-27 | 2014-07-02 | 华中科技大学 | 一种适用于rfid安全通信的椭圆曲线加密协处理器 |
CN107204782A (zh) * | 2017-04-10 | 2017-09-26 | 北京大学 | 一种bch译码器及生成该译码器的编译器的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109981116B (zh) | 2023-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8340280B2 (en) | Using a single instruction multiple data (SIMD) instruction to speed up galois counter mode (GCM) computations | |
Kudithi | An efficient hardware implementation of the elliptic curve cryptographic processor over prime field | |
CN106549677B (zh) | 高速并行bch码译码方法及装置 | |
CN101567696B (zh) | 一种参数可变的bch码编码器及译码器 | |
CN101488762B (zh) | 一种面积紧凑且快速的bch并行译码方法 | |
US10756763B2 (en) | Systems and methods for decoding bose-chaudhuri-hocquenghem encoded codewords | |
Seo | Compact implementations of Curve Ed448 on low‐end IoT platforms | |
CN109981116A (zh) | Bch码中bm算法的求逆电路、实现方法及应用 | |
WO2002101984A1 (en) | Method and apparatus for creating a message digest using a multiple round one-way hash algorithm | |
JPH07273702A (ja) | シンボル列からなる信号を受信する受信機及びそのための等化器並びにシンボル検出方法 | |
Chen et al. | Cyclotomic FFTs with reduced additive complexities based on a novel common subexpression elimination algorithm | |
CN102891689B (zh) | 一种错误位置多项式求解方法及装置 | |
JP3913921B2 (ja) | 有限フィールドでの任意要素の逆数具現回路 | |
JP3614978B2 (ja) | ガロア体の除算方法および除算装置 | |
Dinh et al. | A low latency architecture for computing multiplicative inverses and divisions in GF (2/sup m/) | |
Zhang et al. | Low-complexity transformed encoder architectures for quasi-cyclic nonbinary LDPC codes over subfields | |
CN103023512B (zh) | Atsc系统rs编码中常系数矩阵的生成装置和方法 | |
Ho | Design and Implementation of a Polynomial Basis Multiplier Architecture Over GF (2 m) | |
CN114510217A (zh) | 处理数据的方法、装置和设备 | |
Kavyashree et al. | Design and implementation of different architectures of montgomery modular multiplication | |
CN103095418B (zh) | Cmmb系统rs编码中常系数矩阵的生成装置和方法 | |
CN101221555B (zh) | 用于基-2快速傅立叶变换同址运算的地址产生方法 | |
CN108390761B (zh) | 一种双域模逆的硬件实现方法 | |
CN109358836B (zh) | 一种基于表结构的复合域除法装置 | |
CN106603085A (zh) | 生成多项式的生成方法、其装置、编码器、控制器及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 201210 floor 8, building 1, No. 298, Xiangke Road, Pudong New Area, Shanghai Applicant after: MOUXIN TECHNOLOGY (SHANGHAI) Co.,Ltd. Address before: 201210 room 507, building 1, No. 800, Naxian Road, pilot Free Trade Zone, Pudong New Area, Shanghai Applicant before: MOUXIN TECHNOLOGY (SHANGHAI) Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |