[发明专利]一种蒙哥马利模乘方法及其电路有效
申请号: | 201310100944.1 | 申请日: | 2013-03-26 |
公开(公告)号: | CN103226461A | 公开(公告)日: | 2013-07-31 |
发明(设计)人: | 王德明;丁颜玉;丁一;路崇;段志奎;谭洪舟 | 申请(专利权)人: | 中山大学 |
主分类号: | G06F7/72 | 分类号: | G06F7/72 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 禹小明 |
地址: | 510275 *** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 马利 方法 及其 电路 | ||
1.一种蒙哥马利模乘方法,其特征在于,模长度为k,k=sw,其中w为算法每次处理的字长大小,s为算法for循环所需的次数;输入参数包括a、b和模数n,r为一存储器,r的高k位为存放输入参数a和输出结果的r2,r的低k位为存放输入参数b的r1,t为多项式临时计算结果,r32、z1、c、x1、x2、n0'为中间变量,i和j为循环变量,其运算步骤为:
计算r2=MonPro(a,b,n)=a*b*2-k mod n;
将t和i赋零值;
将中间变量r32赋值为r的第s个字,其中,r32表示存储器r的第32为地址的数据;
令i为0开始外循环;
将t的第i个字与r32相乘,乘积结果与t的第i个字相加,结果的低k位赋给z1,高k位赋给c;
接着将z1与n0'相乘,乘积结果的低k位赋给z1,高k位赋给c,其中,n0`通过预先计算获取,n0'=-n0-1mod(232),n0是指模数n的低32位值,n从外部输入;
令x2=z1;令x1等于r的第i个字;
令j为0开始内循环;
将x1与r的第i个字相乘后的结果和x2与n的第i个字相乘后的结果相加,相加结果再加上c和t的第i+j个字,最终结果的低k位赋给t的第i+j个字,高k位赋给c;并令t的第i+s个字等于c,然后循环变量j加1,当j小于s时重复内循环,当j大于或者等于s时退出内循环;
循环变量i加1,当i小于s时重复外循环,当i大于或者等于s时退出外循环;
判断t的高k位是否大于n,若是则将r2=r2-n,否则将t的低k位赋给r2;
根据r2输出模乘结果。
2.一种蒙哥马利模乘电路,其特征在于,蒙哥马利模乘采用权利要求1所述的方法实现,所述电路包括依次连接的接口电路、SRAM存储器、蒙哥马利模乘控制器、临时寄存器和多项式乘加器;
接口电路与外部总线连接,将输入参数a、b写进SRAM存储器的r存储器中,并将计算完毕后的输出结果读出;
SRAM存储器包括r存储器和t存储器,用于存储输入参数a、输入参数b、中间处理数据以及最终计算结果;
蒙哥马利模乘控制器,用于产生地址和控制信号、读取SRAM存储器中的数据并放入相应寄存器中进行处理,其内设置有地址产生器、减法器、计数器和控制电路;
所述地址产生器用于产生状态跳转信号和访问SRAM存储器的地址信号;
减法器用于完成r2=r2-n的减法操作;
计数器用于计算外部循环次数i和内部循环次数j;
控制电路控制循环的进入和退出以及在每个时钟内,根据地址产生器产生的地址从SRAM存储器中取出相应数据放到临时寄存器中,并将中间结果和多项式临时计算结果t写回到SRAM存储器中;
临时寄存器用于暂存SRAM存储器读写数据以及多项式乘加器的输入输出结果;
多项式乘加器,用于完成如下计算:将x1与r的第i个字相乘后的结果和x2与n的第i个字相乘后的结果相加,相加结果再加上c和t的第i+j个字,最终结果的低k位赋给t的第i+j个字,高k位赋给c。
3.根据权利要求2所述的蒙哥马利模乘电路,其特征在于,所述临时寄存器中包括七个寄存器:ti寄存器、x1寄存器、y1寄存器、x2寄存器、y2寄存器、c寄存器和z1寄存器。
4.根据权利要求2所述的蒙哥马利模乘电路,其特征在于,所述SRAM存储器为双端口SRAM存储器,其在时钟的下降沿完成读操作,在时钟的上升沿完成写操作。
5.根据权利要求2所述的蒙哥马利模乘电路,其特征在于,所述SRAM存储器为双端口寄存器文件,其在时钟的下降沿完成读操作,在时钟的上升沿完成写操作。
6.根据权利要求2所述的蒙哥马利模乘电路,其特征在于,多项式乘加器对多项式采用基4的Booth编码,其产生的部分和利用4:2压缩器逐级压缩。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310100944.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种业务管理软件开发实现方法
- 下一篇:一种智能终端的人机交互方法及系统