[发明专利]执行伽罗瓦域乘法的方法、运算单元和电子装置有效
申请号: | 202110736103.4 | 申请日: | 2021-06-30 |
公开(公告)号: | CN113485751B | 公开(公告)日: | 2023-07-04 |
发明(设计)人: | 陈静 | 申请(专利权)人: | 海光信息技术股份有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38 |
代理公司: | 北京市柳沈律师事务所 11105 | 代理人: | 彭久云 |
地址: | 300392 天津市华苑产业区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 执行 伽罗瓦域 乘法 方法 运算 单元 电子 装置 | ||
1.一种执行伽罗瓦域乘法的方法,其特征在于,包括:
接收指示执行伽罗瓦域乘法的微指令,其中,所述微指令包括作为所述伽罗瓦域乘法的输入参数的第一源操作数、第二源操作数,以及作为所述伽罗瓦域乘法的结果的目的操作数;
解析所述微指令之后使用运算单元执行所述微指令,
其中,使用所述运算单元执行所述微指令,包括:
将第一源操作数划分为N个等长的第一源操作数单元,将第二源操作数划分为N个等长的第二源操作数单元,将所述N个第一源操作数单元和所述N个第二源操作数单元一一对应组合得到N对源操作数单元,其中,所述第一源操作数和所述第二源操作数位长相等,所述第一源操作数和所述第二源操作数由所述微指令指示,每对源操作数单元包括一个第一源操作数单元和一个第二源操作数单元,N为正整数;
将所述N对源操作数单元中每对的第一源操作数单元和第二源操作数单元相乘,获取N个第一中间操作数;
对所述N个第一中间源操作数分别进行求模运算,获取N个目的操作数单元;
合并所述N个目的操作数单元,获取目的操作数作为所述伽罗瓦域乘法的结果。
2.如权利要求1所述的方法,其特征在于,
所述微指令携带所述第一源操作数和所述第二源操作数;或者,
所述微指令指向所述第一源操作数的第一存储位置和/或所述第二源操作数的第二存储位置。
3.如权利要求2所述的方法,其特征在于,在所述微指令指示所述第一源操作数的第一存储位置和/或所述第二源操作数的第二存储位置时,所述方法还包括:
从所述第一存储位置和/或所述第二存储位置,读取所述第一源操作数和/或所述第二源操作数。
4.如权利要求1-3中任一项所述的方法,其特征在于,所述N对源操作数单元采用SIMD的方式处理。
5.如权利要求1所述的方法,其特征在于,在将所述N对源操作数单元中每对的第一源操作数单元和第二源操作数单元相乘时,相乘过程中的求和是采用异或方式实现。
6.如权利要求1所述的方法,其特征在于,将所述N对源操作数单元中每对的第一源操作数单元和第二源操作数单元相乘,获取所述N个第一中间操作数,包括:
将每对源操作数单元中的第一源操作数的每一位和第二源操作数单元的每一位彼此对应相乘,得到多个中间乘积;
对所述多个中间乘积求和,获取与每对源操作数单元对应的第一中间操作数。
7.如权利要求1所述的方法,其特征在于,对所述N个第一中间源操作数分别进行求模运算,获取所述N个目的操作数单元,包括:
利用归约多项式,对每个第一中间源操作数进行多次减法运算,以获取与每个第一中间源操作数对应的目的操作数单元;
其中,在所述多次减法运算中,每个第一中间操作数作为被减数,所述归约多项式作为减数;
所述归约多项式的长度小于第一中间源操作数,在进行第一次减法运算前,在所述归约多项式的低位补0,以使补0后的归约多项式的长度与第一中间源操作数相同;并且
所述补0后的归约多项式在每次进行减法运算之后,所述补0后的归约多项式的每一位右移以及在高位补0。
8.如权利要求1所述的方法,其特征在于,对所述N个第一中间源操作数分别进行求模运算,获取所述N个目的操作数单元,包括:
利用归约多项式,对每个第一中间源操作数进行多次求模,获取多个求模中间结果;
对所述多个求模中间结果求和,以获取与每个第一中间源操作数对应的目的操作数单元;
其中,所述归约多项式的长度小于第一中间源操作数,在进行求模前,在所述归约多项式的低位补0,以使补0后的归约多项式的长度与第一中间源操作数相同。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海光信息技术股份有限公司,未经海光信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110736103.4/1.html,转载请声明来源钻瓜专利网。