发明名称 快速运算多位元串联脉动双基底二进制有限域乘法器
摘要 本发明涉及一种快速运算多位元串联脉动双基底二进制有限域乘法器,包括输入端B、k个PE模块、FRRP模块、R3模块,所述k个PE模块串联,所述k个PE模块经<i>k</i>个周期,第1个周期A的输入是<img file="dest_path_image002.GIF" wi="104" he="25" />,B直接输入,计算结果经过所述FRRP模块还原输入到暂存器C中;第2个周期A的输入<img file="dest_path_image004.GIF" wi="120" he="25" />,B经过所述R3模块输入,计算结果也经过FRRP模块还原,与第1个周期的计算结果相加,保存在暂存器C中;如此,第<i>k</i>个周期,A的输入是<img file="dest_path_image006.GIF" wi="164" he="26" />,B经过(<i>k</i>‑1)次所述R3模块后输入,计算结果经过所述FRRP模块还原,与前面(<i>k</i>‑1)次累加结果相加,保存到暂存器C中,再由暂存器C输出结果。
申请公布号 CN103186360B 申请公布日期 2016.08.03
申请号 CN201310115401.7 申请日期 2013.04.03
申请人 哈尔滨工业大学深圳研究生院 发明人 潘正祥;杨春生;白忠海;李秋莹
分类号 G06F7/52(2006.01)I 主分类号 G06F7/52(2006.01)I
代理机构 深圳市科吉华烽知识产权事务所(普通合伙) 44248 代理人 胡吉科;孙伟
主权项 一种快速运算多位元串联脉动双基底二进制有限域乘法器,其特征在于,包括输入端、k个PE模块、FRRP模块、R3模块,所述k个PE模块串联,所述k个PE模块经k个周期,第1个周期A的输入是A<sub>0</sub>、A<sub>1</sub>、…、A<sub>k‑1</sub>,B从输入端直接输入,所述k个PE模块的计算结果经过所述FRRP模块还原后输入到暂存器C中;所述FRRP模块包括FR模块、R2模块,所述R2模块对FR模块的输出结果进行mod(x<sup>m</sup>+1)的计算,所述FR模块的输入是k个串联PE模块的计算结果,FR模块对k个串联PE模块的计算结果进行还原,将FR模块的计算结果输入到R2模块;所述FR模块包括两个并联的异或门XOR_4和XOR_5;第2个周期A的输入A<sub>k</sub>、A<sub>k+1</sub>、…、A<sub>2k‑1</sub>,B经过所述R3模块输入,计算结果也经过FRRP模块还原,与第1个周期的计算结果相加,保存在暂存器C中;如此,第k个周期,A的输入是A<sub>k(k‑1)</sub>、A<sub>k(k‑1)+1</sub>、…、<img file="FDA0000934350130000011.GIF" wi="124" he="63" />B经过(k‑1)次所述R3模块后输入,计算结果经过所述FRRP模块还原,与所述(k‑1)次累加结果相加,保存到暂存器C中,再由暂存器C输出结果,所述R3模块实现Bx<sup>kd</sup>modF(x)的计算,所述PE模块包括R1模块、CMP模块、CVP模块、PWM模块、<img file="FDA0000934350130000012.GIF" wi="245" he="65" />个异或门、和<img file="FDA0000934350130000013.GIF" wi="366" he="73" />个锁存器,所述CMP模块包括异或门XOR_1和XOR_2,所述异或门XOR_1和XOR_2并联,所述CVP模块为异或门XOR_3,所述PWM模块包括三个并联的与门AND_1、AND_2和AND_3,将所述CMP模块和所述CVP模块输出的结果进行点对点相乘,所述R3模块输出到所述R1模块后经所述CMP模块进行系数转换,A的分段输入所述CVP模块进行A的分段的系数转换,CMP模块和CVP模块的计算结果均输入到PWM模块,实现B和A分段乘积计算,经过<img file="FDA0000934350130000021.GIF" wi="246" he="71" />个异或门累加,结果保存在<img file="FDA0000934350130000022.GIF" wi="249" he="70" />个锁存器中,由<img file="FDA0000934350130000023.GIF" wi="246" he="76" />锁存器输出结果<img file="FDA0000934350130000024.GIF" wi="118" he="78" />其中,A通过三项多项式F(x)=1+x<sup>n</sup>+x<sup>m</sup>,其中n≤m/2,表示为A=a<sub>0</sub>+a<sub>1</sub>x+...+a<sub>m‑1</sub>x<sup>m‑1</sup>,共有m个系数,即(a<sub>0</sub>,a<sub>1</sub>,...,a<sub>m‑1</sub>),使用分段切割法,将m位的A切割成<img file="FDA0000934350130000025.GIF" wi="315" he="72" />每段d位,总共有k<sup>2</sup>个分段,因此有<img file="FDA0000934350130000026.GIF" wi="332" he="89" />B通过双基底可表示为B=b<sub>0</sub>β<sub>0</sub>+b<sub>1</sub>β<sub>1</sub>+...+b<sub>m‑1</sub>β<sub>m‑1</sub>,作为乘法器的另一个输入。
地址 518000 广东省深圳市南山区西丽镇深圳大学城哈工大校区