[发明专利]用于计算多轮SKEIN散列算法的执行单元的设备和方法有效
申请号: | 201180076287.0 | 申请日: | 2011-12-22 |
公开(公告)号: | CN104067194B | 公开(公告)日: | 2017-10-24 |
发明(设计)人: | G·M·沃尔里齐;K·S·雅普;J·D·吉尔福德;E·奥兹图科;V·戈帕尔;W·K·费格哈利;S·M·格尔雷;M·G·迪克森 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F1/00 | 分类号: | G06F1/00;G06F9/305;G06F9/44 |
代理公司: | 上海专利商标事务所有限公司31100 | 代理人: | 高见 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 计算 skein 算法 执行 单元 设备 方法 | ||
1.一种计算设备,包括:
指令流水线内的执行单元,所述执行单元包括多级下列电路:
a)第一逻辑电路部分,包括多个混合逻辑电路部分,每一个混合逻辑电路部分都包括:
i)接收第一值的第一输入和接收第二值的第二输入;
ii)加法器,其具有分别耦合到所述第一输入和第二输入的一对输入;
iii)旋转器,其具有耦合到所述第二输入的相应输入;
iv)异或门,其具有分别耦合到所述加法器的输出和所述旋转器的输出的一对输入;
所述第一逻辑电路部分还包括只读存储器(ROM),所述只读存储器(ROM)包含用于所述多个混合逻辑电路部分的所述旋转器的控制值;
b)置换逻辑电路,其具有耦合到相应的加法器和所述多个混合逻辑电路部分的异或门输出的输入,
c)控制电路,其用于将所述置换逻辑电路的并行输出中的第一输出和第二输出分别耦合至所述多个混合逻辑电路部分中的混合逻辑电路部分的第一输入和第二输入,而无需通过附加混合逻辑电路部分。
2.如权利要求1所述的设备,其特征在于,所述计算设备执行Skein散列算法,所述Skein散列算法是Skein 256散列算法。
3.如权利要求1所述的设备,其特征在于,所述计算设备执行Skein散列算法,所述Skein散列算法是Skein 512散列算法。
4.如权利要求1所述的设备,其特征在于,所述计算设备执行Skein散列算法,所述Skein散列算法是Skein 1024散列算法。
5.如权利要求1所述的设备,其特征在于,所述计算设备执行多轮Skein散列算法,所述多轮是四轮。
6.一种计算多轮Skein散列算法的方法,包括:
并行地执行下列多个混合逻辑电路部分中的每一个:
利用混合逻辑电路部分将第一值和第二值相加以创建第一结果,以及将第三值和第四值相加以创建第二结果;
利用所述混合逻辑电路部分旋转所述第二值以创建第三结果,以及旋转所述第四值以创建第四结果,所述旋转是通过从只读存储器(ROM)读取并被应用于执行所述旋转的逻辑电路的信息来控制的;
利用所述混合逻辑电路部分对所述第一结果和所述第三结果作异或操作以创建第五结果,以及,对所述第二结果和所述第四结果作异或操作以创建第六结果;以及,
通过利用置换逻辑电路置换所述第一结果、第二结果、第五结果和第六结果,来创建新的第一值、第二值、第三值和第四值,而无需通过附加混合逻辑电路部分;以及
将所述新的第一值、第二值,第三值以及第四值从所述置换逻辑电路输出到所述多个混合逻辑电路部分,而无需通过附加混合逻辑电路部分,
其中所述多个混合逻辑电路部分中的每一个包括:
i)接收左边值的第一输入和接收右边值的第二输入;
ii)加法器,其具有分别耦合到所述第一输入和第二输入的一对输入;
iii)旋转器,其具有耦合到所述第二输入的相应输入;
iv)异或门,其具有耦合到所述加法器的输出的第一输入和耦合到所述旋转器的输出的第二输入。
7.如权利要求6所述的方法,其特征在于,还包括执行所述创建并重复多次,以使得在利用第一混合逻辑电路、第二混合逻辑电路以及在所述第二混合逻辑电路下游的第三和第四混合逻辑电路执行指令的过程中,对于相应的值执行所述相加、所述旋转、所述异或四次。
8.如权利要求7所述的方法,其特征在于,还包括
利用与所述第一混合逻辑电路在相同级的第三混合逻辑电路,与所述第一值和第二值的所述加法以及所述第三值和第四值的所述相加同时地,将第五值和第六值相加,并将第七值和第八值相加。
9.如权利要求6所述的方法,其特征在于,还包括从所述只读存储器中读取第一控制值,并对执行所述旋转的旋转器应用所述第一控制值。
10.如权利要求9所述的方法,其特征在于,所述第一控制值是至少部分地由包含在单个指令的格式中的立即操作数来确定的。
11.如权利要求6所述的方法,其特征在于,所述Skein散列算法是Skein256散列算法。
12.如权利要求6所述的方法,其特征在于,所述Skein散列算法是Skein512散列算法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180076287.0/1.html,转载请声明来源钻瓜专利网。