System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 模乘运算方法、装置、芯片、板卡和车载系统制造方法及图纸_技高网

模乘运算方法、装置、芯片、板卡和车载系统制造方法及图纸

技术编号:41701010 阅读:13 留言:0更新日期:2024-06-19 12:34
本申请提供一种模乘运算方法、装置、芯片、板卡和车载系统,涉及计算机技术领域。该模乘运算装置包括:处理器和数据运算器;其中,所述数据运算器,包括乘法器、累加器、第一寄存器、第二寄存器、第三寄存器、第一多路数据选择器、第二多路数据选择器、第三多路数据选择器以及第四多路数据选择器;所述处理器,用于接收到数据运算指令之后,获取与所述数据运算指令相匹配的目标数据;并将所述目标数据传输至所述数据运算器中;所述数据运算器,用于接收所述目标数据,并对所述目标数据进行运算处理,得到数据运算结果;其中,所述数据运算结果用于指示模乘运算结果。本申请的方法,提高了模乘运算的运算速度,提升了运算性能。

【技术实现步骤摘要】

本申请涉及计算机,尤其涉及一种模乘运算方法、装置、芯片、板卡和车载系统


技术介绍

1、椭圆曲线密码(elliptic curve cryptography,ecc)算法是一种基于椭圆曲线的公开密钥密码算法,该ecc算法由于具有更高的安全性和更小的密钥长度,在数字签名、信息安全、区块链等领域具有广泛的应用。

2、随着ecc算法的普及,ecc算法对应的计算数据量也在逐渐增大。此时,在进行ecc算法的模乘运算时,可能会由于逐渐增加的数据量,导致内存溢出,或者出现计算效率降低的现象,进而影响了ecc算法的性能。


技术实现思路

1、本申请提供一种模乘运算方法、装置、芯片、板卡和车载系统,用以解决现有的模乘运算方法效率低、性能差的问题。

2、第一方面,本申请提供一种模乘运算装置,包括:处理器和数据运算器;其中,所述数据运算器,包括乘法器、累加器、第一寄存器、第二寄存器、第三寄存器、第一多路数据选择器、第二多路数据选择器、第三多路数据选择器以及第四多路数据选择器;所述处理器分别与所述乘法器连接、所述第一多路数据选择器连接、所述第二多路数据选择器连接、所述第三多路数据选择器连接;所述第一多路数据选择器与所述第一寄存器连接;所述第一寄存器分别与所述第一多路数据选择器连接、所述第二多路数据选择器连接、所述第四多路数据选择器连接;所述第二多路数据选择器分别与所述第一寄存器连接、所述第二寄存器连接、所述处理器连接;所述第二寄存器分别与所述累加器连接、所述第二多路数据选择器连接;所述累加器分别与所述第三多路数据选择器连接、所述第四多路数据选择器连接;所述第三多路数据选择器与所述第三寄存器连接;所述第三寄存器分别与所述累加器连接、所述第四多路数据选择器连接;

3、所述处理器,用于接收到数据运算指令之后,获取与所述数据运算指令相匹配的目标数据;并将所述目标数据传输至所述数据运算器中;

4、所述数据运算器,用于接收所述目标数据,并对所述目标数据进行运算处理,得到数据运算结果;其中,所述数据运算结果用于指示模乘运算结果。

5、第二方面,本申请提供一种模乘运算方法,该方法应用于处理器;包括:

6、响应于模乘运算指令,获取待运算数据;其中,所述待运算数据包括待计算数据和预计算数据;所述待计算数据表征需要进行模乘运算的数据;所述预计算数据表征在进行模乘运算过程中,所依赖的中间数据;所述预计算数据为基于所述待计算数据确定的数据;

7、基于预先设置的数据运算指令,对所述待运算数据进行模乘运算,得到所述待运算数据对应的模乘运算结果;其中,所述预先设置的数据运算指令基于上述第一方面中任一项模乘运算装置实现。

8、第三方面,本申请提供一种芯片,所述芯片包括第一方面中任一项所述的模乘运算装置。

9、第四方面,本申请提供一种板卡,所述板卡包括第三方面所述的芯片。

10、第五方面本申请提供一种车载系统,所述车载系统包括第三方面所述的芯片或者包括第四方面所述的板卡。

11、本申请提供的模乘运算方法、装置、芯片、板卡和车载系统,可以响应于模乘运算指令,来获取待运算数据,然后,再根据预先设置的数据运算指令,采用上述的运算装置,来对待运算数据进行模乘运算,得到待运算数据对应的模乘运算结果。这种实施方式,可以通过自定义数据运算指令,并通过硬件单元来实现模乘运算,从而可以提高模乘运算的运算处理速度,进而提升模乘运算的运算效率。此时,在将上述模乘运算方法应用于复杂算法(例如,椭圆曲线密码)时,可以提升复杂算法的计算性能,从而使复杂算法的应用更加流畅、广泛,提升了复杂算法的鲁棒性。进一步的,还可以提升应用该复杂算法的计算机设备(例如,车载系统)的性能,从而进一步提升使用该计算机设备的用户的使用体验。

本文档来自技高网...

【技术保护点】

1.一种模乘运算装置,其特征在于,所述运算装置包括:处理器和数据运算器;其中,所述数据运算器,包括乘法器、累加器、第一寄存器、第二寄存器、第三寄存器、第一多路数据选择器、第二多路数据选择器、第三多路数据选择器以及第四多路数据选择器;所述处理器分别与所述乘法器连接、所述第一多路数据选择器连接、所述第二多路数据选择器连接、所述第三多路数据选择器连接;所述第一多路数据选择器与所述第一寄存器连接;所述第一寄存器分别与所述第一多路数据选择器连接、所述第二多路数据选择器连接、所述第四多路数据选择器连接;所述第二多路数据选择器分别与所述第一寄存器连接、所述第二寄存器连接、所述处理器连接;所述第二寄存器分别与所述累加器连接、所述第二多路数据选择器连接;所述累加器分别与所述第三多路数据选择器连接、所述第四多路数据选择器连接;所述第三多路数据选择器与所述第三寄存器连接;所述第三寄存器分别与所述累加器连接、所述第四多路数据选择器连接;

2.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第一乘法扩展指令;其中,所述第一乘法扩展指令表征进行乘法运算并求和的指令;所述目标数据包括第一乘数和第一被乘数;

3.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第二乘法扩展指令;其中,所述第二乘法扩展指令表征进行乘法运算并求和后,保留高位的运算结果,输出低位的运算结果的指令;所述目标数据包括第二乘数和第二被乘数;

4.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第三乘法扩展指令;其中,所述第三乘法扩展指令表征进行乘法运算后输出低位的乘法运算结果的指令;所述目标数据包括第三乘数和第三被乘数;

5.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第四乘法扩展指令;其中,所述第四乘法扩展指令表征进行乘法运算后输出高位的乘法运算结果的指令;所述目标数据包括第四乘数、第四被乘数和第一目标数值;

6.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第一置零扩展指令;其中,所述第一置零扩展指令表征输出低位数据后置零的指令;所述目标数据包括所述累加器运算后的求和运算结果和第一目标数值;

7.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第二置零扩展指令;其中,所述第二置零扩展指令表征输出高位数据后置零的指令;所述目标数据包括所述第三寄存器所存储的数据和第一目标数值;

8.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征数据保持扩展指令;其中,所述数据保持扩展指令表征输出低位数据后保留剩余数据的指令;所述目标数据包括所述第二寄存器所存储的数据和所述第三寄存器所存储的数据;

9.一种模乘运算方法,其特征在于,应用于处理器;所述方法包括:

10.根据权利要求9所述的方法,其特征在于,所述待计算数据包括被乘数、乘数和模数据;所述预计算数据包括基于所述模数据确定的模幂数据、基于所述模幂数据确定的第一中间数据和第二中间数据;所述基于预先设置的数据运算指令,对所述待运算数据进行模乘运算,得到所述待运算数据对应的模乘运算结果,包括:

11.根据权利要求10所述的方法,其特征在于,所述基于所述第二进位数据和所述第二求和数据,确定所述待运算数据对应的模乘运算结果,包括:

12.根据权利要求10所述的方法,其特征在于,在基于预先设置的数据运算指令,对所述待运算数据进行模乘运算,得到所述待运算数据对应的模乘运算结果之前,所述方法还包括:

13.根据权利要求12所述的方法,其特征在于,所述待运算数据对应的数据字长为多字长;所述预先设置的数据运算指令包括第一乘法扩展指令、第二乘法扩展指令、第一置零扩展指令、第二置零扩展指令和数据保持扩展指令;所述基于所述待运算数据对应的数据字长和所述预先设置的数据运算指令,确定第一乘法指令和第二乘法指令,包括:

14.根据权利要求13所述的方法,其特征在于,基于所述目标字长、所述第一乘法扩展指令、所述第二乘法扩展指令、所述第一置零扩展指令、所述第二置零扩展指令和所述数据保持扩展指令,确定所述第一乘法指令,包括:

15.根据权利要求13所述的方法,其特征在于,基于所述目标字长、所述第一乘法扩展指令、所述第二乘法扩展指令、所述第一置零扩展指令、所述第二置零扩展指令和所述数据保持扩展指令,确定所述第二乘法指令,包括:

16.根据权利要求12所述的方法,其特征在于,所述待运算数据对应的数据字长为单字长;所述预先设置的数据运算指令包括第三乘法扩展指令和第四乘法扩展指令;所述基于所述待运算数据对应...

【技术特征摘要】

1.一种模乘运算装置,其特征在于,所述运算装置包括:处理器和数据运算器;其中,所述数据运算器,包括乘法器、累加器、第一寄存器、第二寄存器、第三寄存器、第一多路数据选择器、第二多路数据选择器、第三多路数据选择器以及第四多路数据选择器;所述处理器分别与所述乘法器连接、所述第一多路数据选择器连接、所述第二多路数据选择器连接、所述第三多路数据选择器连接;所述第一多路数据选择器与所述第一寄存器连接;所述第一寄存器分别与所述第一多路数据选择器连接、所述第二多路数据选择器连接、所述第四多路数据选择器连接;所述第二多路数据选择器分别与所述第一寄存器连接、所述第二寄存器连接、所述处理器连接;所述第二寄存器分别与所述累加器连接、所述第二多路数据选择器连接;所述累加器分别与所述第三多路数据选择器连接、所述第四多路数据选择器连接;所述第三多路数据选择器与所述第三寄存器连接;所述第三寄存器分别与所述累加器连接、所述第四多路数据选择器连接;

2.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第一乘法扩展指令;其中,所述第一乘法扩展指令表征进行乘法运算并求和的指令;所述目标数据包括第一乘数和第一被乘数;

3.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第二乘法扩展指令;其中,所述第二乘法扩展指令表征进行乘法运算并求和后,保留高位的运算结果,输出低位的运算结果的指令;所述目标数据包括第二乘数和第二被乘数;

4.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第三乘法扩展指令;其中,所述第三乘法扩展指令表征进行乘法运算后输出低位的乘法运算结果的指令;所述目标数据包括第三乘数和第三被乘数;

5.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第四乘法扩展指令;其中,所述第四乘法扩展指令表征进行乘法运算后输出高位的乘法运算结果的指令;所述目标数据包括第四乘数、第四被乘数和第一目标数值;

6.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第一置零扩展指令;其中,所述第一置零扩展指令表征输出低位数据后置零的指令;所述目标数据包括所述累加器运算后的求和运算结果和第一目标数值;

7.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征第二置零扩展指令;其中,所述第二置零扩展指令表征输出高位数据后置零的指令;所述目标数据包括所述第三寄存器所存储的数据和第一目标数值;

8.根据权利要求1所述的运算装置,其特征在于,所述数据运算指令表征数据保持扩展指令;其中,所述数据保持...

【专利技术属性】
技术研发人员:顾瑞红施蕾王海军李晓玮王腾飞王冬梅
申请(专利权)人:亿咖通湖北技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1