一种协处理器、电子器件及电子设备制造技术

技术编号:33153942 阅读:20 留言:0更新日期:2022-04-22 14:09
本申请提供一种协处理器、电子器件及电子设备,协处理器包括:命令FIFO和运算FIFO;取命令模块,与命令FIFO连接,用于获取命令并存放于命令FIFO;取运算参数模块,与运算FIFO连接用于获取运算参数并存放于运算FIFO;控制器分别与取命令模块和取运算参数模块连接,用于在一条命令成功写入命令FIFO后,控制取命令模块获取下一条命令,以及用于在一条命令对应的运算参数成功写入运算FIFO后,控制取运算参数模块获取下一条命令对应的运算参数;算法引擎,分别与控制器和运算FIFO连接,用于在接收到命令后,取出该命令的运算参数进行运算。该方案可以提高协处理器整体表现出的处理速度,从而提高协处理器的性能。提高协处理器的性能。提高协处理器的性能。

【技术实现步骤摘要】
一种协处理器、电子器件及电子设备


[0001]本申请涉及数据处理
,具体而言,涉及一种协处理器、电子器件及电子设备。

技术介绍

[0002]现有的加解密协处理器架构常常采用类似于DMA(Direct Memory Access,直接存储器访问)的结构,以提升加解密性能,结构如图1所示。运行时,在加解密协处理器内部的控制模块的调度下,将需要进行加解密的数据读入到加解密协处理器输入端的FIFO(First in,First out,先进先出,是一种常用的先进先出的数据缓冲器)中,然后数据从输入端的FIFO中,依次送入加解密协处理器内部的相应算法引擎中。算法引擎运算结束后,将处理后的数据通过输出端写入指定存储器地址中。
[0003]但是,在实际使用过程中发现,由于算法引擎的处理性能有限,常会出现一条命令的所有待加解密的数据已经存到加解密协处理器内的FIFO中,但加解密算法引擎还未处理完成,从而使得加解密协处理器的输入端常处于空闲状态的情况。这就造成了加解密协处理器的性能的浪费,降低了加解密协处理器的处理速度。

技术实现思路

[0004]本申请实施例的目的在于提供一种协处理器、电子器件及电子设备,用以提高协处理器的性能。
[0005]本申请实施例提供了一种协处理器,包括:命令FIFO和运算FIFO;取命令模块,与所述命令FIFO连接,用于获取命令,并将获取到的命令存放于所述命令FIFO;取运算参数模块,与所述运算FIFO连接,用于获取运算参数,并将获取到的运算参数存放于所述运算FIFO;控制器,分别与所述取命令模块和所述取运算参数模块连接,用于在一条命令成功写入所述命令FIFO后,控制所述取命令模块获取下一条命令,以及用于在一条命令对应的运算参数成功写入所述运算FIFO后,控制所述取运算参数模块获取下一条命令对应的运算参数;算法引擎,分别与所述控制器和所述运算FIFO连接,用于在接收到所述控制器从所述命令FIFO取出的命令后,从所述运算FIFO中取出该命令对应的运算参数进行运算。
[0006]在上述实现过程中,通过设置命令FIFO和运算FIFO,以及设置取命令模块和取运算参数模块,从而在控制器的控制下,取命令模块可以独立进行命令的获取,并将命令存入命令FIFO中。而取运算参数模块也可以独立进行运算参数的获取,并将运算参数写入运算FIFO中。这就实现了对于命令和运算参数的独立获取和存储,使得针对任一条命令,在算法引擎没有执行完毕时,协处理器中就可以预先获取到后一条或后几条命令,以及后一条或后几条命令对应的运算参数,达到数据预取的效果,从而减少协处理器的输入处于空闲状态的情况,提高协处理器整体表现出的处理速度,从而提高协处理器的性能。
[0007]进一步地,所述控制器包括命令子控制器;其中:所述命令子控制器分别与所述取命令模块和所述命令FIFO连接;所述取命令模块具体用于,将获取到的命令发送给所述命
令子控制器,以通过所述命令子控制器将所述命令写入所述命令FIFO;所述命令子控制器用于,将所述命令写入所述命令FIFO,并在将所述命令写入所述命令FIFO后,控制所述取命令模块获取下一条命令。
[0008]在上述实现过程中,通过设置专门的命令子控制器对取命令模块进行命令获取的控制,可以有效保证对于命令获取控制的可靠性,同时,由命令子控制器来写入命令,可以确保在一条命令成功写入命令FIFO后,才执行下一条命令的获取,保证命令的逐条写入与获取。
[0009]进一步地,所述命令子控制器还用于,所述命令子控制器具体用于,对所述取命令模块传来的命令进行正确性校验;若命令正确,将所述命令写入所述命令FIFO。
[0010]在上述实现过程中,通过对取命令模块传来的命令进行正确性校验,在命令正确时才写入命令FIFO中,从而保证了对于后续执行的命令的正确性。
[0011]进一步地,所述控制器包括运算子控制器;所述运算子控制器分别与所述取运算参数模块和所述命令FIFO连接,用于从所述命令FIFO中读取命令,并将该命令发送给所述取运算参数模块;所述取运算参数模块具体用于,根据所述运算子控制器发来的命令,获取该命令对应的运算参数。
[0012]在上述实现过程中,通过设置专门的运算子控制器对取运算参数模块进行运算参数获取的控制,可以有效保证对于运算参数获取控制的可靠性。
[0013]进一步地,所述运算参数包括密钥和数据;所述运算FIFO包括密钥FIFO和数据FIFO;所述取运算参数模块包括取密钥模块和取数据模块;所述运算子控制器包括密钥子控制器和数据子控制器;其中:所述取密钥模块分别与所述密钥子控制器和所述密钥FIFO连接,用于根据所述密钥子控制器传来的命令,获取该命令对应的密钥,并写入所述密钥FIFO中;所述取数据模块分别与所述数据子控制器和所述数据FIFO连接,用于根据所述数据子控制器传来的命令,获取该命令对应的数据,并写入所述数据FIFO中。
[0014]在实际应用过程中,若协处理器为加解密协处理器,算法引擎需要进行加解密运算时,算法引擎所需的运算参数往往需要包含命令指定的数据和密钥。在上述实现过程中,通过专门的取密钥模块和取数据模块、专门的密钥子控制器和数据子控制器、专门的密钥FIFO和数据FIFO来分别实现对于数据和密钥的获取、控制以及存储,这就有效保证对于命令对应的数据和密钥的获取与存储的可靠性。
[0015]进一步地,所述运算子控制器具体用于,判断当前读取的命令与所述算法引擎当前执行的命令之间是否具有数据相关性;若不具有数据相关性,则从所述命令FIFO中读取命令发送给所述取运算参数模块;若具有数据相关性,则等待所述算法引擎当前执行的命令执行完毕,重新判断当前读取的命令与所述算法引擎所执行的下一条命令之间是否具有数据相关性。
[0016]在上述实现过程中,考虑了当前需要进行运算参数获取的命令与算法引擎当前执行的命令之间的数据相关性,在两命令之间不具有数据相关性时,才执行运算参数获取操作,从而保证命令队列执行的正确性。
[0017]进一步地,所述控制器包括主控制器;所述协处理器还包括输出反馈模块;所述主控制器分别与所述命令FIFO、所述算法引擎和所述输出反馈模块连接,用于从所述命令FIFO取出的命令发送给所述算法引擎;所述输出反馈模块分别与所述主控制器和所述算法
引擎连接,用于在接收到所述算法引擎运算完毕后的输出信号后,向所述主控制器反馈通知信号;所述通知信号表征所述算法引擎当前执行的命令已执行完毕;所述主控制器还用于在接收到所述通知信号后,继续从所述命令FIFO取出命令发送给所述算法引擎。
[0018]在上述实现方案中,通过输出反馈模块,可以保证在算法引擎中的一条命令执行完毕之后,主控制器才输出下一条命令供算法引擎执行,从而保证了算法引擎对于命令的执行可靠性,保证了协处理器的正常运转。
[0019]进一步地,所述命令FIFO具有第一指针、第二指针和第三指针;其中:所述第一指针指向所述命令FIFO的队尾,用于写入命令本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种协处理器,其特征在于,包括:命令FIFO和运算FIFO;取命令模块,与所述命令FIFO连接,用于获取命令,并将获取到的命令存放于所述命令FIFO;取运算参数模块,与所述运算FIFO连接,用于获取运算参数,并将获取到的运算参数存放于所述运算FIFO;控制器,分别与所述取命令模块和所述取运算参数模块连接,用于在一条命令成功写入所述命令FIFO后,控制所述取命令模块获取下一条命令,以及用于在一条命令对应的运算参数成功写入所述运算FIFO后,控制所述取运算参数模块获取下一条命令对应的运算参数;算法引擎,分别与所述控制器和所述运算FIFO连接,用于在接收到所述控制器从所述命令FIFO取出的命令后,从所述运算FIFO中取出该命令对应的运算参数进行运算。2.如权利要求1所述的协处理器,其特征在于,所述控制器包括命令子控制器;其中:所述命令子控制器分别与所述取命令模块和所述命令FIFO连接;所述取命令模块具体用于,将获取到的命令发送给所述命令子控制器,以通过所述命令子控制器将所述命令写入所述命令FIFO;所述命令子控制器用于,将所述命令写入所述命令FIFO,并在将所述命令写入所述命令FIFO后,控制所述取命令模块获取下一条命令。3.如权利要求2所述的协处理器,其特征在于,所述命令子控制器还用于,所述命令子控制器具体用于,对所述取命令模块传来的命令进行正确性校验;若命令正确,将所述命令写入所述命令FIFO。4.如权利要求1所述的协处理器,其特征在于,所述控制器包括运算子控制器;所述运算子控制器分别与所述取运算参数模块和所述命令FIFO连接,用于从所述命令FIFO中读取命令发送给所述取运算参数模块;所述取运算参数模块具体用于,根据所述运算子控制器发来的命令,获取该命令对应的运算参数。5.如权利要求4所述的协处理器,其特征在于,所述运算参数包括密钥和数据;所述运算FIFO包括密钥FIFO和数据FIFO;所述取运算参数模块包括取密钥模块和取数据模块;所述运算子控制器包括密钥子控制器和数据子控制器;...

【专利技术属性】
技术研发人员:张子裕
申请(专利权)人:海光信息技术股份有限公司
类型:发明
国别省市:

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

1