[发明专利]用于大数乘法的方法及系统有效
申请号: | 200880102372.8 | 申请日: | 2008-08-08 |
公开(公告)号: | CN101790718A | 公开(公告)日: | 2010-07-28 |
发明(设计)人: | 文森特·杜帕丘斯;拉塞尔·霍布森 | 申请(专利权)人: | 爱特梅尔公司 |
主分类号: | G06F7/00 | 分类号: | G06F7/00 |
代理公司: | 北京律盟知识产权代理有限责任公司 11287 | 代理人: | 孟锐 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 大数 乘法 方法 系统 | ||
1.一种操作乘法电路以计算两个操作数A与B的乘积的计算机实施的方法,所 述两个操作数中的至少一者宽于与所述乘法电路相关联的宽度,其中所述操作数中的 每一者包括以特定权数j及i为特征的一个或一个以上相连的有序字宽操作数段Aj及 Bi,其中j是从0到k的整数且其中i是从0到m的整数,且字具有规定数目n的位, 且其中所述乘法电路执行字宽操作数段对乘法运算矩阵,所述矩阵包括m+1个行及 k+m+2个列,每一行具有权数x且每一列具有权数y,所述乘法电路可存取存储器, 所述方法包括:
同时对一对行执行乘法运算,其中对于每一对行,从所述存储器读取一对对应 Bi字宽操作数段,且针对k+2个列中的每一者反复地执行字宽操作数段对乘法运算 Aj*Bi,使得对于所述矩阵中的每一列,需要最多两个额外存储器读取操作及一个存储 器写入操作。
2.根据权利要求1所述的方法,其中对根据每一对中所包含的所述行的所述权 数的增加或减小的权数值的数字序列而选择的若干对行执行所述乘法运算。
3.根据权利要求1所述的方法,其中对从所述m+1个行中随机选择的若干对行 执行所述乘法运算。
4.根据权利要求1所述的方法,其中针对具有权数y1的列的字宽操作数段对乘 法运算包括执行Aj字宽操作数段乘以Bi字宽操作数段的至少一个乘法运算,其中所 述Aj字宽操作数的所述权数j与所述Bi字宽操作数段的所述权数i的和等于所述列的 所述权数y1。
5.根据权利要求1所述的方法,其进一步包括:
计算所述k+m+2个列中的每一者的n位最终列结果,其中列的最终列结果包括 相对于所述列针对所述m+1个行中的所述每一者执行的所述字宽操作数段对乘法运 算的累加的最低有效n位字。
6.根据权利要求5所述的方法,其中计算列的n位最终列结果包括:对于针对 所述列所计算的最终一对行,累加所述字宽操作数段对乘法运算的结果、如果有所述 列的中间列结果的情况下的所述中间列结果、及如果有作为针对先前所计算的列而确 定的累加结果的上部字的进位值的情况下的所述进位值,以确定所述列的累加结果, 其中所述n位最终列结果包括所述列的所述累加结果的最低有效n个位。
7.根据权利要求5所述的方法,其中列的中间列结果包括:对于并非为针对所 述列将要计算的所述最终对行的一对行,累加所述字宽操作数段对乘法运算的结果、 如果有所述列的先前所计算的中间列结果的情况下的所述中间列结果、及如果有先前 所计算的列的进位值的情况下的所述进位值,以确定所述列的中间累加结果,其中所 述中间列结果包括所述列的所述中间累加结果的所述最低有效n个位。
8.根据权利要求7所述的方法,其中所述列的所述中间累加结果的上部字包括 所述列的将要在下一列的累加运算中使用的进位值。
9.根据权利要求1所述的方法,其中将从存储器读取的对应于所述对行的所述 对Bi字宽操作数段存储于高速缓冲存储器中,同时执行针对所述对行的所述乘法运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于爱特梅尔公司,未经爱特梅尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200880102372.8/1.html,转载请声明来源钻瓜专利网。