[发明专利]用于执行大整数算术操作的方法和装置有效
申请号: | 201580064065.5 | 申请日: | 2015-11-23 |
公开(公告)号: | CN107003832B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | S·格伦;V·克拉斯诺夫 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F7/523 | 分类号: | G06F7/523 |
代理公司: | 上海专利商标事务所有限公司 31100 | 代理人: | 何焜 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 执行 整数 算术 操作 方法 装置 | ||
1.一种处理器,包括:
第一源寄存器,用于存储第一256位整数操作数;
第二源寄存器,用于存储第二256位整数操作数;
解码器,用于对256位乘法指令进行解码,所述256位乘法指令指定所述第一源寄存器、所述第二源寄存器、以及立即数值,所述立即数值用于从所述第一源寄存器选择所述第一256位整数操作数并从所述第二源寄存器选择所述第二256位整数操作数;以及
执行电路,包括乘法器和加法器的集合,所述执行电路用于响应于所述256位乘法指令对所述第一256位整数操作数和所述第二256位整数操作数执行乘法以生成512位结果,所述执行电路用于将所述第一256位整数操作数和所述第二256位整数操作数的底数表示从第一底数表示转换为基于用于执行所述乘法并且生成结果的所述乘法器和加法器的大小选择的第二底数表示,以及然后用于将所述结果转换回所述第一底数表示。
2.如权利要求1所述的处理器,其特征在于,每个256位整数操作数的所述第一底数表示包括以底数264表示的四位。
3.如权利要求2所述的处理器,其特征在于,所述第二底数表示包括以底数252表示的五位。
4.如权利要求3所述的处理器,其特征在于,所述乘法器中的每一个包括52x 52乘法器。
5.如权利要求4所述的处理器,其特征在于,所述乘法器中的每一个用于将来自所述第一源操作数的五位中的一个与所述第二源操作数的五位中的一个相乘。
6.如权利要求5所述的处理器,其特征在于,对于来自所述第一源操作数的位A0、A1、A2、A3和A4以及所述第二源操作数的位B0、B1、B2、B3和B4:
第一乘法器,用于将A1和B2相乘以生成积A1B2;
第二乘法器,用于将A0和B3相乘以生成积A0B3;
第三乘法器,用于将A1和B1相乘以生成积A1B1;
第四乘法器,用于将A0和B2相乘以生成积A0B2;
第五乘法器,用于将A1和B0相乘以生成积A1B0;
第六乘法器,用于将A0和B1相乘以生成积A0B1;以及
第七乘法器,用于将A0和B0相乘以生成积A0B0。
7.如权利要求6所述的处理器,其特征在于,所述加法器中的每一个用于将所述乘法器输出的结果中的至少两个相加。
8.如权利要求7所述的处理器,进一步包括:
第一加法器,用于确定A1B2和A0B3的第一和;
第二加法器,用于确定A1B1和A0B2的第二和;
第三加法器,用于确定A1B0和A0B1的第三和;以及
第四加法器,用于确定A0B0和零的第四和。
9.如权利要求8所述的处理器,其特征在于,四个和中的每一个输出到四个不同的128位通道中的每一个。
10.如权利要求9所述的处理器,其特征在于,将所述128位通道中的每一个中的四个和相加并变换为底数264表示。
11.如权利要求1所述的处理器,其特征在于,所述256位乘法指令被解码为多个微操作,所述微操作用于通过使用所述第二底数表示来执行多个乘法和加法操作以生成512位结果。
12.如权利要求1所述的处理器,其特征在于,所述第一源寄存器包括第一512位向量寄存器,所述第二源寄存器包括第二512位向量寄存器,并且其中所述第一256位整数操作数和所述第二256位整数操作数用于分别被存储在所述第一512位向量寄存器和所述第二512位向量寄存器的上部或下部区域中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201580064065.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:仅位置流水线中的宽松拣分
- 下一篇:用于向量索引加载和存储的方法和装置