CN104679474A - 有限域gf(2^227)上的乘法器及模乘算法 - Google Patents
有限域gf(2^227)上的乘法器及模乘算法 Download PDFInfo
- Publication number
- CN104679474A CN104679474A CN201510115408.8A CN201510115408A CN104679474A CN 104679474 A CN104679474 A CN 104679474A CN 201510115408 A CN201510115408 A CN 201510115408A CN 104679474 A CN104679474 A CN 104679474A
- Authority
- CN
- China
- Prior art keywords
- register
- result
- mould
- deposited
- operand
- 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.)
- Withdrawn
Links
Landscapes
- Executing Machine-Instructions (AREA)
Abstract
本发明公开了有限域GF(2^227)上的乘法器及模乘算法,属于数据信息加解密的技术领域。乘法器包括:部分积叠加模块、第一寄存器、第一累加模块、第二寄存器、第二累加模块、第三寄存器、模加模块、第四寄存器。模乘算法复用乘法操作单元227*57,提出了应用于位宽m=226的ECC系统的m=227的模乘模块,m=226的时候,具有AOP类型约减多项式,对其操作数进行冗余表示为m=227,简化其约减多项式,提高模乘性能,在部分积叠加部分中插入了寄存器,切断了模乘操作的路径,从而减小关键路径长度,流水执行模乘操作,提高了时钟频率,提升了处理速度以及数据吞吐量,节约资源。
Description
技术领域
本发明公开了有限域GF(2^227)上的乘法器及模乘算法,属于数据信息加解密的技术领域。
背景技术
随着信息技术的飞速发展,随着网络的普及以及广泛的应用,网络上流通的数据越来越多越来越大,并且人们对网络上数据传输的安全性要求越来越高,这样对于网络安全的研究带来了很大的挑战,因此密码学如今成为了信息安全的核心。密码学中公钥密码体制得到了广泛的研究和使用,在对公钥密码学的研究中,一种更加节省资源加解密效率更高的密码体制被提出,即椭圆曲线密码学。
1985年,Neal Koblitz和Victor Miller分别提出了椭圆曲线密码系统(EllipticCurve Cryptography,ECC),自从ECC诞生之后它的安全性和实现效率就被众多的数学家和密码学家所广泛研究,目前它被认为是已知的公钥密码体制中每比特加密强度最高的一种,同RSA密码算法相比,它具有更高的安全性能,计算速度快,存储空间占用小。在ECC系统硬件实现中,基于二元域的多项式基的实现方式被广泛的使用,而在ECC系统中,点乘模块是影响处理速度等性能的关键,而点乘模块中模乘模块又是它的核心,所以对模乘的研究更是关键所在。
因此为了提高整个系统的性能,减少资源消耗,寻求更好的模乘模块的实现方式成为了研究关注的焦点,研究机构对于NIST推荐的几种位宽已经有了很广泛和深入的研究,所以有一些研究机构开始着眼于一类具有特殊类型约减多项式的位宽。
发明内容
本发明所要解决的技术问题是针对上述背景技术的不足,提供了有限域GF(2^227)上的乘法器及模乘算法,提出了针对227bit位宽操作数的AOP(All OnePolynomial,一个多项式)型约减多项式,实现了最高位宽为226bit的ECC系统中的操作数模乘运算,解决了现有模乘资源消耗大的技术问题。
本发明为实现上述发明目的采用如下技术方案:
有限域GF(2^227)上的乘法器,将一个操作数由低位至高位划分为固定字长的若干部分,对各部分与另一操作数按位相乘的部分积进行模加,模乘器具体包括:
部分积叠加模块、第一寄存器、第一累加模块、第二寄存器、第二累加模块、第三寄存器、模加模块、第四寄存器,其中:
部分积叠加模块,其输入端接操作数信号,其输出端与第一寄存器输入端连接,输出操作数按位相乘部分积的叠加结果至第一寄存器输入端;
第一寄存器,其输出端与第一累加模块输入端连接,输出寄存的部分积叠加结果至第一累加模块;
第一累加模块,其输出端与第二寄存器输入端连接,输出第一累加结果至第二寄存器;
第二寄存器,其输出端与第二累加模块输入端连接,输出寄存的第一累加结果至第二累加模块;
第二累加模块,其输出端与第三寄存器输入端连接,输出第二累加结果至第三寄存器;
第三寄存器,其输出端与模加模块第一输入端连接,输出寄存的第二累加结果至模加模块;
模加模块,其第二输入端与第四寄存器输出端连接,其输出端与第四寄存器输入端连接,模加模块对第二累加结果进行组合逻辑运算得到模乘结果,第四寄存器寄存模乘结果并将该模乘结果反馈至模加模块作为下一次模加运算的输入数据。
所述有限域GF(2^227)上的乘法器,第一和/或第二累加模块为2级异或树链结构的累加模块。
有限域GF(2^227)上的模乘算法,利用所述乘法器并采用数字串行的执行方式完成模乘运算,包括如下步骤:
A.将两个乘数填位表示成位宽m为227bit的第一操作数、第二操作数;
B.将第一操作数由低位至高位依次划分为字长是57bit的第一至第四部分,将第一操作数的每一部分依次与第二操作数按位相乘所得的部分积叠加后再模加。
作为所述有限域GF(2^227)上模乘算法的进一步优化方案,步骤B中所述的部分积按如下方法得到:采用AOP型约减式进行冗余表示后的约减多项式f(x)=x227+1对第二操作数循环左移以确定第二操作数的下一操作位,采用并行方式计算第一操作数每一部分与第二操作数每一操作位的积。
进一步的,所述有限域GF(2^227)上模乘算法,步骤B具体包括如下状态:
a.第一寄存器寄存第一操作数的第一部分与第二操作数按位相乘的部分积叠加结果,导入第一操作数第二部分并进入状态b;
b.第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中,第一操作数的第二部分与第二操作数按位相乘的部分积叠加结果寄存在第一寄存器中,导入第一操作数第三部分并进入状态c;
c.第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中,第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中,第一操作数第三部分与第二操作数按位相乘的部分积叠加结果寄存在第一寄存器中,导入第一操作数第四部分并进入状态d;
d.模加器对第二累加结果进行组合逻辑运算得到第一次模乘结果,第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中,第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中,第一操作数第四部分与第二操作数按位相乘的部分积叠加结果寄存在第一寄存器中;
e.模加器对第二累加结果、第一次模乘结果进行组合逻辑运算得到第二次模乘结果,第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中,第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中;
f.模加器对第二累加结果、第二次模乘结果进行组合逻辑运算得到第三次模乘结果,第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中;
g.模加器对第二累加结果、第三次模乘结果进行组合逻辑运算得到最后的模乘结果。
本发明采用上述技术方案,具有以下有益效果:
(1)复用了乘法操作单元227*57,节约了资源;
(2)很少的使用移位寄存器,直接进行了乘法操作而不需要截断矩阵和矩阵简化模块,使设计得到简化;
(3)在部分积叠加部分中插入了寄存器,切断了模乘操作的路径,从而减小关键路径长度,使得关键路径最大延时为TA+2Tx,提高时钟频率;
(4)通过状态机控制使得整个操作流水执行,是在多消耗寄存器资源的条件下提高时钟频率,提升模乘操作的效率;
(5)提出了应用于位宽m=226的ECC系统的m=227的模乘模块,m=226的时候,具有AOP类型约减多项式,对其操作数进行冗余表示为m=227,简化其约减多项式,提高模乘性能。
附图说明
图1是本发明整体数据流图。
图2是控制数据流的主控状态机。
图3是模乘模块细化的结构框图。
图4是模乘模块中2级异或树链。
图5是模乘模块中Reduction模块结构框图。
图6是流水执行方式各个状态进行的操作。
图7是本发明模乘整体设计框图。
图8是模乘模块的框图。
具体实施方式
下面结合附图对发明的技术方案进行详细说明。
图1所示是本发明整体数据流图,整体模块包括了四个子部分:输入数据加载以及分配寄存器堆、模乘整体模块、模加模块、部分积寄存器堆。
在主控状态机的控制下,分时给出各个逻辑单元的操作数据,然后寄存相应的计算结果,整体模乘采用数字串行的执行方式,数字串行字长w=57,采用LSB的执行方式,处理的操作数据位宽最大为227bit,一次模乘可得到227*57模乘运算结果,为了提高执行频率以及吞吐率,采用流水执行,经过4次模乘模块运算可以得到最终模乘运算结果。
输入数据加载以及分配寄存器堆是在主控状态机的控制下,加载了输入的两个模乘操作数A、B,并且正确的分配并给出每一次计算227*57所需要的输入数据,如第一次227*57模乘,给出A,B1(B1=B[56:0]);第二次227*57模乘给出A57,B2(A57=A×x57,B2=B[113:57]);第三次227*57模乘给出A114,B3(A114=A×x114,B3=B[170:114]);第四次227*57模乘给出A171,B3(A171=A×x171,B4={1‘b0,B[226:171]})。
模乘整体模块如图8所示,包括:部分积叠加模块、第一寄存器、第一累加模块、第二寄存器、第二累加模块、第三寄存器、模加模块、第四寄存器。
部分积叠加模块,其输入端接操作数信号,其输出端与第一寄存器输入端连接,输出操作数按位相乘部分积的叠加结果至第一寄存器输入端。第一寄存器,其输出端与第一累加模块输入端连接,输出寄存的部分积叠加结果至第一累加模块。第一累加模块,其输出端与第二寄存器输入端连接,输出第一累加结果至第二寄存器。第二寄存器,其输出端与第二累加模块输入端连接,输出寄存的第一累加结果至第二累加模块。第二累加模块,其输出端与第三寄存器输入端连接,输出第二累加结果至第三寄存器。第三寄存器,其输出端与模加模块第一输入端连接,输出寄存的第二累加结果至模加模块。模加模块,其第二输入端与第四寄存器输出端连接,其输出端与第四寄存器输入端连接,模加模块对第二累加结果进行组合逻辑运算得到模乘结果,第四寄存器寄存模乘结果并将该模乘结果反馈至模加模块作为下一次模加运算的输入数据。
模乘模块具体框图如图3所示,包括部分积产生部分302,部分积叠加结果寄存器堆304、308和3012,以及二级异或树链306和3010。
对于模乘操作,输入数据A、B,计算后得到结果A×B(mod f(x)),根据多项式基乘法规则:A×B(mod f(x))=Σ(A×Bixi)(mod f(x))=Σ(A×ximod f(x))Bi=ΣAi×Bi;其中A×ximod f(x)=Ai,Bi是操作数B的第i位。
部分积产生部分302,计算了一次227*57并得到57个部分积,每一个都是227bit,如:计算第一次模乘,那么得到A0×B0......A56×B56,Ai×Bi操作是Ai的每一位都要和Bi进行一次与操作,Ai经过一个Reduction单元操作之后得到Ai+1。Reduction单元详图如图5所示。
部分积叠加结果寄存器堆304、308和3012,分别将部分积某次叠加后结果保存起来,使得操作能够流水执行,也就是用寄存器打断了部分积的叠加链。它们结构相同,只是数量不同。
二级异或树链306和3010是组合逻辑,完成部分积的叠加,其具体图示如图4所示。306和3010结构相同,但是异或门的个数不同。
输入操作数通过302得到部分积,然后通过寄存器堆以及异或逻辑进行模加,最后3012存储的结果通过异或逻辑后得到了最终的227*57的模乘结果。
模加模块完成两个操作数相加并取模的操作,如果两个操作数A、B,那么模加的结果即为(A+B)mod(2),也就是两个操作数按位相加而没有进位,进一步用硬件实现即两个操作数按位异或A^B,通过异或阵列就能够实现此模块。
部分积寄存器堆寄存了每一次227*57模乘的运算累加结果,并将之前的累加结果作为模加模块106的一个输入操作数,此模块分时寄存了C1,C1+C2,C1+C2+C3,C1+C2+C3+C4,其中Ci是每一次模乘的运算结果,最后寄存了227*227的模乘结果,并作为输出数据。
图2所示是模乘模块的主控状态机,状态机200包含了9个状态,分别为IDLE,LOAD,PARTIAL REGFILE1,PARTIAL REGFILE2,PARTIAL REGFILE3,RESULT1,RESULT2,RESULT3,FINAL RESULT。外部的控制状态跳转的只有模乘使能信号Mul_en_i,当它为高电平时,启动状态机,跳转到LOAD状态,顺序执行之后状态,如果过程中出现了未知状态,状态机跳转到IDLE状态。下面分别描述各个状态。
状态IDLE,是空闲状态,此时所有寄存器值都是初始值0,这个状态监测使能信号是否为高,准备启动状态机,此外此状态将把模乘结果输出标志信号清零,当从FINAL RESULT跳转到IDLE的时候,会拉高模乘结果输出标志信号,为保证此信号只保持一个时钟周期,在IDLE时将其清零。
状态LOAD是将输入的两个操作数寄存并将每一次227*57的输入数据给出。
状态PARTIAL REGFILE1是将第一次227*57生成的部分积部分叠加结果寄存,也就是将结果寄存在图3中的寄存器堆304,并将第二次227*57的输入数据给出。
状态PARTIAL REGFILE2是将寄存器堆304结果进一步通过而异或树链逻辑叠加之后的结果寄存,也就是将结果寄存在图3中寄存器堆308,同时将第二次227*57生成的部分积部分叠加结果寄存,即将结果寄存在图3中的寄存器堆304,并将第三次227*57的输入数据给出。
状态PARTIAL REGFILE3将寄存器堆308结果进一步通过而异或树链逻辑叠加之后的结果寄存,也就是将结果寄存在图3中寄存器堆3012,并将寄存器堆304结果进一步通过而异或树链逻辑叠加之后的结果寄存在308,同时将第三次227*57生成的部分积部分叠加结果寄存在304,并将第四次227*57的输入数据给出。
状态RESULT1将3012的结果通过异或门阵列并通过106模块与108内容相加的结果寄存在108中,此时就得到了第一次模乘结果,同时将寄存器堆308结果进一步通过而异或树链逻辑叠加之后的结果寄存在3012,并将寄存器堆304结果进一步通过而异或树链逻辑叠加之后的结果寄存在308,同时将第四次227*57生成的部分积部分叠加结果寄存在304。
状态RESULT2将第二次227*57模乘寄存在3012的结果与C1通过组合逻辑运算的结果寄存于108,得到了累加结果C1+C2,同时将寄存器堆308结果进一步通过而异或树链逻辑叠加之后的结果寄存在3012,并将寄存器堆304结果进一步通过而异或树链逻辑叠加之后的结果寄存在308。
状态RESULT3将第三次227*57模乘寄存在3012的结果C1+C2与通过组合逻辑运算的结果寄存于108,得到了累加结果C1+C2+C3,同时把第四次227*57模乘寄存在308的结果通过逻辑运算寄存在3012。
状态FINAL RESULT将第四次的模乘寄存在3012的结果与C1+C2+C3通过组合逻辑运算的结果寄存在108,此时得到了最终227*227的运算结果,并拉高模乘结果输出标志信号。
以上详细说明了各个状态所进行的操作,从中体现出了本发明采用了流水执行方式,减少了一次完整模乘执行所需要的周期,提高了执行效率。
图4所示是模乘模块中的二级异或树链,其中所示的一个异或门是代指227个异或门,因为一个部分积是227bit位宽,每级异或门都实现部分积的两两相加,也就是实现模加操作,如(Ci+Ci+1)mod2,所以两个部分积按位异或就能够实现模加操作。
图5所示是模乘模块中的Reduction部分的,图上的A0,A1,......A226与图3中的不同,图3所示Ai的就是Ai,但是图5的Ai是Ai的每一位,本模块实现的功能是(Ai×x)modf(x)=Ai+1,其中f(x)=x227+1。对于位宽m=226bit的时候,此位宽具有AOP类型的约减多项式f(x)=x226+x225+x224......+x2+x+1,具有AOP约减式的位宽经过冗余表示之后,可以化简其约减多项式,使得对其进行设计的时候具有很多优势,因此对226bit位宽进行冗余表示使得m=227bit,此时约减式就是f(x)=x227+1,因此本设计就基于此理论。这样(A226×x226+A225×x225+A224×x224......A0)×x=A226×x227+A225×x226...A0×x,对其进行约减,x227=1,这样相乘的结果就是A225×x226+A224×x225......A0×x+A226,即如图5所示,输入数据Ai进行Reduction操作就是对其进行一次循环左移操作。
图6所示是本发明的流水执行过程,图中从上而下第一行是整个模乘操作执行的状态,第二行到第五行是每一次227*57模乘所执行的操作,每一次模乘都包括5个操作,分别是LOAD,PARTIAL REGFILE1,PARTIAL REGFILE 2,PARTIAL REGFILE3,RESULT1,分别执行的操作是输入数据加载,部分积叠加寄存1,部分及叠加寄存2,部分积叠加寄存3和每次模乘的部分积累加,详细执行过程已在上述状态机描述中陈述,将四次模乘流水执行缩短了模乘执行周期。注意:图中的缩写已经在图旁边标示。
图7所示是本发明的整体设计框图,包含了所有的接口信号。输入接口信号为:系统时钟Clk_i;全局低电平复位信号Rstn_i;模乘操作使能信号,高有效,Mul_en_i;两个输入操作数A_i,B_i,位宽为227bit。输出接口信号为:最终模乘结果输出数据C_o;模乘执行完成单周期标志位信号,高有效,Outvalid_o。当检测到高电平的模乘使能信号的时候启动模乘操作,执行完成后给出模乘操作结束标志位,并输出模乘结果数据,调用模乘操作的其他单元检测到模乘操作结束标志位就可以采样模乘结果输出数据。
综上所述,本发明具有以下有益效果:
(1)复用了乘法操作单元227*57,节约了资源;
(2)很少的使用移位寄存器,直接进行了乘法操作而不需要截断矩阵和矩阵简化模块,使设计得到简化;
(3)在部分积叠加部分中插入了寄存器,切断了模乘操作的路径,从而减小关键路径长度,使得关键路径最大延时为TA+2Tx,提高时钟频率;
(4)通过状态机控制使得整个操作流水执行,是在多消耗寄存器资源的条件下提高时钟频率,提升模乘操作的效率;
(5)提出了应用于位宽m=226的ECC系统的m=227的模乘模块,m=226的时候,具有AOP类型约减多项式,对其操作数进行冗余表示为m=227,简化其约减多项式,提高模乘性能。
Claims (5)
1.有限域GF(2^227)上的乘法器,其特征在于,将一个操作数由低位至高位划分为固定字长的若干部分,对各部分与另一操作数按位相乘的部分积进行模加,模乘器具体包括:
部分积叠加模块、第一寄存器、第一累加模块、第二寄存器、第二累加模块、第三寄存器、模加模块、第四寄存器,其中:
部分积叠加模块,其输入端接操作数信号,其输出端与第一寄存器输入端连接,输出操作数按位相乘部分积的叠加结果至第一寄存器输入端;
第一寄存器,其输出端与第一累加模块输入端连接,输出寄存的部分积叠加结果至第一累加模块;
第一累加模块,其输出端与第二寄存器输入端连接,输出第一累加结果至第二寄存器;
第二寄存器,其输出端与第二累加模块输入端连接,输出寄存的第一累加结果至第二累加模块;
第二累加模块,其输出端与第三寄存器输入端连接,输出第二累加结果至第三寄存器;
第三寄存器,其输出端与模加模块第一输入端连接,输出寄存的第二累加结果至模加模块;
模加模块,其第二输入端与第四寄存器输出端连接,其输出端与第四寄存器输入端连接,模加模块对第二累加结果进行组合逻辑运算得到模乘结果,第四寄存器寄存模乘结果并将该模乘结果反馈至模加模块作为下一次模加运算的输入数据。
2.根据权利要求1所述的有限域GF(2^227)上的乘法器,其特征在于,所述第一和/或第二累加模块为2级异或树链结构的累加模块。
3.有限域GF(2^227)上的模乘算法,其特征在于,利用权利要求1所述的乘法器并采用数字串行的执行方式完成模乘运算,包括如下步骤:
A.将两个乘数填位表示成位宽m为227bit的第一操作数、第二操作数;
B.将第一操作数由低位至高位依次划分为字长是57bit的第一至第四部分,将第一操作数的每一部分依次与第二操作数按位相乘所得的部分积叠加后再模加。
4.根据权利要求3所述的有限域GF(2^227)上的模乘算法,其特征在于,步骤B中所述的部分积按如下方法得到:采用AOP型约减式进行冗余表示后的约减多项式f(x)=x227+1对第二操作数循环左移以确定第二操作数的下一操作位,采用并行方式计算第一操作数每一部分与第二操作数每一操作位的积。
5.根据权利要求3或4所述的有限域GF(2^227)上的模乘算法,其特征在于,步骤B具体包括如下状态:
a.第一寄存器寄存第一操作数的第一部分与第二操作数按位相乘的部分积叠加结果,导入第一操作数第二部分并进入状态b;
b.第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中,第一操作数的第二部分与第二操作数按位相乘的部分积叠加结果寄存在第一寄存器中,导入第一操作数第三部分并进入状态c;
c.第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中,第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中,第一操作数第三部分与第二操作数按位相乘的部分积叠加结果寄存在第一寄存器中,导入第一操作数第四部分并进入状态d;
d.模加器对第二累加结果进行组合逻辑运算得到第一次模乘结果,第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中,第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中,第一操作数第四部分与第二操作数按位相乘的部分积叠加结果寄存在第一寄存器中;
e.模加器对第二累加结果、第一次模乘结果进行组合逻辑运算得到第二次模乘结果,第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中,第一寄存器寄存的数据经第一累加器处理后得到第一累加结果,第一累加结果寄存在第二寄存器中;
f.模加器对第二累加结果、第二次模乘结果进行组合逻辑运算得到第三次模乘结果,第二寄存器寄存的数据经第二累加器处理后得到第二累加结果,第二累加结果寄存在第三寄存器中;
g.模加器对第二累加结果、第三次模乘结果进行组合逻辑运算得到最后的模乘结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510115408.8A CN104679474A (zh) | 2015-03-16 | 2015-03-16 | 有限域gf(2^227)上的乘法器及模乘算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510115408.8A CN104679474A (zh) | 2015-03-16 | 2015-03-16 | 有限域gf(2^227)上的乘法器及模乘算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104679474A true CN104679474A (zh) | 2015-06-03 |
Family
ID=53314599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510115408.8A Withdrawn CN104679474A (zh) | 2015-03-16 | 2015-03-16 | 有限域gf(2^227)上的乘法器及模乘算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104679474A (zh) |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105117197A (zh) * | 2015-10-03 | 2015-12-02 | 荣成市鼎通电子信息科技有限公司 | 无乘法运算的wpan中准循环矩阵串行乘法器 |
CN106484366A (zh) * | 2016-10-17 | 2017-03-08 | 东南大学 | 一种二元域位宽可变模乘运算器 |
CN106909339A (zh) * | 2017-02-22 | 2017-06-30 | 深圳职业技术学院 | 一种基于二叉树结构的有限域乘法器 |
CN107015782A (zh) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | 一种基于不可约三项式的有限域乘法器 |
CN107728993A (zh) * | 2017-11-03 | 2018-02-23 | 深圳职业技术学院 | 一种基于全一不可约多项式的有限域乘法器 |
CN107992283A (zh) * | 2017-11-09 | 2018-05-04 | 中国电子科技集团公司第二十八研究所 | 一种基于降维实现有限域乘法的方法和装置 |
CN108351762A (zh) * | 2015-11-12 | 2018-07-31 | Arm有限公司 | 使用重叠位的数值的冗余表示 |
CN110543291A (zh) * | 2019-06-11 | 2019-12-06 | 南通大学 | 有限域大整数乘法器及基于ssa算法的大整数乘法的实现方法 |
CN111198672A (zh) * | 2019-12-30 | 2020-05-26 | 华南师范大学 | 一种基于二元扩域的点加和倍点电路及其控制方法 |
CN111694544A (zh) * | 2020-06-02 | 2020-09-22 | 杭州知存智能科技有限公司 | 多位复用乘加运算装置、神经网络运算系统以及电子设备 |
CN113485751A (zh) * | 2021-06-30 | 2021-10-08 | 海光信息技术股份有限公司 | 执行伽罗瓦域乘法的方法、运算单元和电子装置 |
-
2015
- 2015-03-16 CN CN201510115408.8A patent/CN104679474A/zh not_active Withdrawn
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105117197A (zh) * | 2015-10-03 | 2015-12-02 | 荣成市鼎通电子信息科技有限公司 | 无乘法运算的wpan中准循环矩阵串行乘法器 |
CN108351762A (zh) * | 2015-11-12 | 2018-07-31 | Arm有限公司 | 使用重叠位的数值的冗余表示 |
CN108351762B (zh) * | 2015-11-12 | 2022-08-23 | Arm有限公司 | 使用重叠位的数值的冗余表示的方法和装置 |
CN106484366A (zh) * | 2016-10-17 | 2017-03-08 | 东南大学 | 一种二元域位宽可变模乘运算器 |
CN106484366B (zh) * | 2016-10-17 | 2018-12-14 | 东南大学 | 一种二元域位宽可变模乘运算器 |
CN106909339A (zh) * | 2017-02-22 | 2017-06-30 | 深圳职业技术学院 | 一种基于二叉树结构的有限域乘法器 |
CN107015782A (zh) * | 2017-04-12 | 2017-08-04 | 深圳职业技术学院 | 一种基于不可约三项式的有限域乘法器 |
CN107728993B (zh) * | 2017-11-03 | 2021-07-13 | 深圳职业技术学院 | 一种基于全一不可约多项式的有限域乘法器 |
CN107728993A (zh) * | 2017-11-03 | 2018-02-23 | 深圳职业技术学院 | 一种基于全一不可约多项式的有限域乘法器 |
CN107992283A (zh) * | 2017-11-09 | 2018-05-04 | 中国电子科技集团公司第二十八研究所 | 一种基于降维实现有限域乘法的方法和装置 |
CN110543291A (zh) * | 2019-06-11 | 2019-12-06 | 南通大学 | 有限域大整数乘法器及基于ssa算法的大整数乘法的实现方法 |
CN111198672A (zh) * | 2019-12-30 | 2020-05-26 | 华南师范大学 | 一种基于二元扩域的点加和倍点电路及其控制方法 |
CN111694544A (zh) * | 2020-06-02 | 2020-09-22 | 杭州知存智能科技有限公司 | 多位复用乘加运算装置、神经网络运算系统以及电子设备 |
CN111694544B (zh) * | 2020-06-02 | 2022-03-15 | 杭州知存智能科技有限公司 | 多位复用乘加运算装置、神经网络运算系统以及电子设备 |
CN113485751A (zh) * | 2021-06-30 | 2021-10-08 | 海光信息技术股份有限公司 | 执行伽罗瓦域乘法的方法、运算单元和电子装置 |
CN113485751B (zh) * | 2021-06-30 | 2023-07-04 | 海光信息技术股份有限公司 | 执行伽罗瓦域乘法的方法、运算单元和电子装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104679474A (zh) | 有限域gf(2^227)上的乘法器及模乘算法 | |
CN100470464C (zh) | 基于改进的蒙哥马利算法的模乘器 | |
CN102231102B (zh) | 基于余数系统的rsa密码处理方法及协处理器 | |
CN102306091B (zh) | 椭圆曲线点乘硬件快速实现方法 | |
CN103942031B (zh) | 椭圆域曲线运算方法 | |
CN103793199B (zh) | 一种支持双域的快速rsa密码协处理器 | |
CN104395876B (zh) | 没有算术和逻辑单元的计算机处理器和系统 | |
CN105335331A (zh) | 一种基于大规模粗粒度可重构处理器的sha256实现方法及系统 | |
CN105913118A (zh) | 一种基于概率计算的人工神经网络硬件实现装置 | |
Xie et al. | High-throughput finite field multipliers using redundant basis for FPGA and ASIC implementations | |
CN101599828A (zh) | 一种高效的rsa加解密方法及其协处理器 | |
CN102043760A (zh) | 数据处理方法及系统 | |
CN104572012A (zh) | 一种基于aop的多项式基gf(2227)高速模乘法器 | |
CN107992283A (zh) | 一种基于降维实现有限域乘法的方法和装置 | |
CN103279323A (zh) | 一种加法器 | |
CN102184088B (zh) | 一种基于串并结合实现有限域乘法的方法及装置 | |
CN101630244A (zh) | 一种流水线型椭圆曲线双标量乘法系统及方法 | |
Rashidi | Efficient hardware implementations of point multiplication for binary Edwards curves | |
Li et al. | Research in fast modular exponentiation algorithm based on FPGA | |
CN107092462B (zh) | 一种基于fpga的64位异步乘法器 | |
CN104506316A (zh) | 一种基于sm2基点的点乘运算方法 | |
CN103107879A (zh) | 一种rsa加速器 | |
CN209560522U (zh) | 获取加解密运算中的中间结果组的硬件装置 | |
CN107463354A (zh) | 一种面向ECC的双域并行度可变的Montgomery模乘电路 | |
Seo et al. | Multi-precision squaring on MSP and ARM processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C04 | Withdrawal of patent application after publication (patent law 2001) | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20150603 |