本申请提供了一种计算引擎、数据处理方法、设备及存储介质,该计算引擎包括:至少一个高级运算单元、状态查询单元和至少一个逻辑运算单元,至少一个高级运算单元与状态查询单元连接,状态查询单元与至少一个逻辑运算单元连接;至少一个高级运算单元,用于获取待处理数据;状态查询单元,用于查询至少一个逻辑运算单元的状态,获得处于空闲状态的逻辑运算单元;处于空闲状态的逻辑运算单元,用于接收并处理待处理数据,获得数据处理结果;至少一个高级运算单元,还用于接收数据处理结果。该计算引擎可以有效减少逻辑运算单元的数量,实现高级运算单元所需的逻辑运算单元共通共用、灵活分配,降低计算引擎面积,进一步降低成本,同时易于设计。时易于设计。时易于设计。
【技术实现步骤摘要】
一种计算引擎、数据处理方法、设备及存储介质
[0001]本申请涉及集成电路
,尤其涉及一种计算引擎、数据处理方法、电子设备以及计算机可读存储介质。
技术介绍
[0002]数据加密是指利用加密算法对数据进行加密,从而保护数据安全。其中,加密算法可以包括对称加密算法和非对称加密算法。
[0003]在非对称加密算法中,需要公开密钥(简称为公钥)和私有密钥(简称为私钥)两种密钥。其中,数据加密使用的密钥和数据解密使用的密钥为不同的密钥,因此非对称加密算法的加密强度较高。
[0004]然而,非对称加密算法的高复杂度导致其计算效率较低。为了提升非对称加密算法的计算效率,业界通常会利用多个相同的算法电路组成计算引擎以完成计算。然而,上述方法会导致计算引擎中的逻辑运算单元占比较高,从而提升制造成本。
技术实现思路
[0005]本申请提供了一种计算引擎,该计算引擎能够实现不同高级运算单元所需的逻辑运算单元的共通共用,从而降低计算引擎的面积。本申请还提供了上述计算引擎对应的数据处理方法、电子设备、计算机可读存储介质以及计算机程序产品。
[0006]第一方面,本申请提供了一种计算引擎。所述计算引擎包括:至少一个高级运算单元、状态查询单元和至少一个逻辑运算单元,所述至少一个高级运算单元与所述状态查询单元连接,所述状态查询单元与所述至少一个逻辑运算单元连接;所述至少一个高级运算单元,用于获取待处理数据;所述状态查询单元,用于查询所述至少一个逻辑运算单元的状态,获得处于空闲状态的逻辑运算单元;所述处于空闲状态的逻辑运算单元,用于接收并处理所述待处理数据,获得数据处理结果;所述至少一个高级运算单元,还用于接收所述数据处理结果。
[0007]在一些可能的实现方式中,所述状态查询单元还用于:将所述处于空闲状态的逻辑运算单元反馈至所述至少一个高级运算单元,并与所述处于空闲状态的逻辑运算单元连通;所述至少一个高级运算单元具体用于:通过所述状态查询单元,将所述待处理数据发送至所述处于空闲状态的逻辑运算单元。
[0008]在一些可能的实现方式中,所述数据处理结果包括多个子处理结果,所述至少一个高级运算单元还用于:在接收到全部所述子处理结果后,输出所述数据处理结果。
[0009]在一些可能的实现方式中,所述至少一个高级运算单元包括:蒙哥马利乘法运算单元、点加运算单元、倍点运算单元、点乘运算单元、哈希算法运算单元中的至少一种。
[0010]在一些可能的实现方式中,所述逻辑运算单元中包括至少一个子运算单元,所述至少一个子运算单元包括:加法运算单元、减法运算单元、乘法运算单元、模加运算单元、模减运算单元、模乘运算单元、异或运算单元中的至少一种。
[0011]第二方面,本申请提供了一种数据处理方法。所述方法应用于计算引擎,所述计算引擎包括至少一个高级运算单元、状态查询单元和至少一个逻辑运算单元,所述至少一个高级运算单元与所述状态查询单元连接,所述状态查询单元与所述至少一个逻辑运算单元连接,所述方法包括:所述至少一个高级运算单元获取待处理数据;所述状态查询单元查询所述至少一个逻辑运算单元的状态,获得处于空闲状态的逻辑运算单元;所述处于空闲状态的逻辑运算单元接收并处理所述待处理数据,获得数据处理结果;所述至少一个高级运算单元接收所述数据处理结果。
[0012]在一些可能的实现方式中,所述方法还包括:从所述至少一个高级运算单元中确定与所述待处理数据对应的高级运算单元;所述至少一个高级运算单元获取待处理数据,包括:所述待处理数据对应的高级运算单元获取待处理数据。
[0013]在一些可能的实现方式中,所述数据处理结果包括多个子处理结果,所述方法还包括:在所述至少一个高级运算单元接收到全部所述子处理结果后,输出所述数据处理结果。
[0014]第三方面,本申请提供了一种电子设备。所述电子设备包括处理器和存储器,所述存储器中存储有指令,所述处理器执行所述指令,使得所述电子设备执行上述第二方面或第二方面的任一种实现方式所述的方法。
[0015]第四方面,本申请提供了一种计算机可读存储介质。所述计算机可读存储介质包括计算机可读指令,当所述计算机可读指令在电子设备上运行时,使得所述电子设备执行上述第二方面或第二方面的任一种实现方式所述的方法。
[0016]第五方面,本申请提供了一种计算机程序产品。所述计算机程序产品包括计算机可读指令,当所述计算机可读指令在电子设备上运行时,使得所述电子设备执行上述第二方面或第二方面的任一种实现方式所述的方法。
[0017]本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
[0018]基于上述内容描述,可知本申请的技术方案具有如下有益效果:具体地,该计算引擎包括至少一个高级运算单元、状态查询单元和至少一个逻辑运算单元,至少一个高级运算单元与状态查询单元连接,状态查询单元与至少一个逻辑运算单元连接。其中,至少一个高级运算单元用于获取待处理数据,状态查询单元用于查询至少一个逻辑运算单元的状态并获得处于空闲状态的逻辑运算单元,处于空闲状态的逻辑运
算单元用于接收并处理待处理数据,从而获得数据处理结果,至少一个高级运算单元还用于接收数据处理结果。
[0019]该计算引擎通过增加状态查询单元,在高级运算单元存在待处理数据时,将该待处理数据发送至空闲的逻辑运算单元处理,实现将待处理数据灵活调度的功能。与传统计算引擎中每个高级运算单元独立使用逻辑运算单元的结构相比,该计算引擎可以有效减少逻辑运算单元的数量,实现高级运算单元所需的逻辑运算单元共通共用、灵活分配,从而降低计算引擎的面积,进一步降低成本,同时易于设计。
附图说明
[0020]结合附图并参考以下具体实施方式,本申请各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
[0021]图1为本申请实施例提供的一种传统计算引擎的结构示意图;图2为本申请实施例提供的一种计算引擎的结构示意图;图3为本申请实施例提供的一种逻辑运算单元的结构示意图;图4为本申请实施例提供的一种状态查询单元的结构示意图;图5为本申请实施例提供的一种数据处理方法的流程示意图;图6为本申请实施例提供的一种实现数据处理的电子设备的结构示意图。
具体实施方式
[0022]下面将参照附图更详细地描述本申请的实施例。虽然附图中显示了本申请的某些实施例,然而应当理解的是,本申请可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本申请。应当理解的是,本申请的附图及实施例仅用于示例性作用,并非用于限制本申请的保护范围。
[0023]本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种计算引擎,其特征在于,所述计算引擎包括:至少一个高级运算单元、状态查询单元和至少一个逻辑运算单元,所述至少一个高级运算单元与所述状态查询单元连接,所述状态查询单元与所述至少一个逻辑运算单元连接;所述至少一个高级运算单元,用于获取待处理数据;所述状态查询单元,用于查询所述至少一个逻辑运算单元的状态,获得处于空闲状态的逻辑运算单元;所述处于空闲状态的逻辑运算单元,用于接收并处理所述待处理数据,获得数据处理结果;所述至少一个高级运算单元,还用于接收所述数据处理结果。2.根据权利要求1所述的计算引擎,其特征在于,所述状态查询单元还用于:将所述处于空闲状态的逻辑运算单元反馈至所述至少一个高级运算单元,并与所述处于空闲状态的逻辑运算单元连通;所述至少一个高级运算单元具体用于:通过所述状态查询单元,将所述待处理数据发送至所述处于空闲状态的逻辑运算单元。3.根据权利要求1所述的计算引擎,其特征在于,所述数据处理结果包括多个子处理结果,所述至少一个高级运算单元还用于:在接收到全部所述子处理结果后,输出所述数据处理结果。4.根据权利要求1至3任一项所述的计算引擎,其特征在于,所述至少一个高级运算单元包括:蒙哥马利乘法运算单元、点加运算单元、倍点运算单元、点乘运算单元、哈希算法运算单元中的至少一种。5.根据权利要求1至3任一项所述的计算引擎,其特征在于,所述逻辑运算单元中包括至少一个子运算单元,所述至少一个子运算单元包括:加法运算单元、减法运算单元、乘法运算单元、模加运算单元...
【专利技术属性】
技术研发人员:张凯,柴森,唐婧文,
申请(专利权)人:紫光同芯微电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。