处理器核、处理器及指令处理方法技术

技术编号:31483673 阅读:19 留言:0更新日期:2021-12-18 12:18
本申请公开了一种处理器核、处理器及指令处理方法。该处理器核包括:取指单元,用于获取指令,指令至少包括第一操作码;解码单元,用于对指令进行解码;以及执行单元,用于根据解码单元的解码结果执行指令,其中,解码单元基于至少一个逻辑模块对第一操作码进行转换,以获得第二操作码,并对第二操作码进行解码,每个逻辑模块接收第一操作码并提供第二操作码中的至少一位数据。在多个不同的处理器核中,对于同一个第二操作码,可以使用不同的第一操作码和逻辑模块来获得该第二操作码,从而大大提高了数据的保密性,避免数据被反编译。避免数据被反编译。避免数据被反编译。

【技术实现步骤摘要】
处理器核、处理器及指令处理方法


[0001]本专利技术涉及计算机
,更具体地,涉及一种处理器核、处理器及指令处理方法。

技术介绍

[0002]中央处理器(Central Processing Unit,可简称为CPU)是计算机中的主要设备之一,用于执行数据处理、计算机指令处理、程序处理等任务。CPU架构是CPU所遵守的规范,在通常的CPU架构中,其执行指令通常包括提取(fetch)、解码(Decode)、执行(Execute)和写回(Write back)等过程。
[0003]现有的CPU架构仍有待改进,以进一步提升其保密性。

技术实现思路

[0004]本公开的目的在于提供一种处理器核、处理器及指令处理方法。
[0005]根据本专利技术的第一方面,提供了一种处理器核,包括:取指单元,用于获取指令,所述指令至少包括第一操作码;解码单元,用于对所述指令进行解码;以及执行单元,用于根据所述解码单元的解码结果执行所述指令,其中,所述解码单元基于至少一个逻辑模块对所述第一操作码进行转换,以获得第二操作码,并对所述第二操作码进行解码,每个所述逻辑模块接收所述第一操作码并提供所述第二操作码中的至少一位数据。
[0006]可选的,每个所述逻辑模块包含多个逻辑门,每个所述逻辑模块所包含的多个逻辑门被配置为具有不完全相同的连接关系,以使得所述第一操作码对应于所述第二操作码中的所述至少一位数据。
[0007]可选的,每个所述逻辑模块包括:第一模块,包括至少一个第一逻辑门和与所述第一逻辑门数量相同的至少一个缓冲门,每个所述第一逻辑门接收所述第一操作码中的至少一位数据,并提供第一中间数据,每个所述缓冲门用于接收所述第一操作码中的所述至少一位数据并提供第二中间数据,其中,接收所述第一操作码中的相同的所述至少一个数据的所述第一逻辑门和所述第二逻辑门形成组合逻辑门。
[0008]可选的,每个所述逻辑模块还包括:第二模块,包括至少一个第二逻辑门,每个所述第二逻辑门连接至每个所述组合逻辑门,并选择接收每个所述组合逻辑门提供的所述第一中间数据和所述第二中间数据中的一个,每个所述第二逻辑门提供一个第三中间数据。
[0009]可选的,每个所述逻辑模块还包括:第三模块,包括至少一个第三逻辑门,每个所述第三逻辑门连接至每个所述第二逻辑门的输出端,以提供所述第二操作码中的一位数据。
[0010]可选的,所述第一逻辑门为非门,所述第二逻辑门为与门,所述第三逻辑门为或门。
[0011]可选的,所述第一逻辑门的数量与所述第一操作码的位数相对应。
[0012]可选的,所述解码单元包括多个所述逻辑模块,每个所述逻辑模块所包含的所述
第一逻辑门、所述第二逻辑门和所述第三逻辑门的数量为固定值,且每个所述逻辑模块所包含的所述第一逻辑门、所述缓冲门、所述第二逻辑门和所述第三逻辑门之间的连接关系不完全相同。
[0013]可选的,所述解码单元包括一个所述逻辑模块,所述逻辑模块所包含的所述第三逻辑门的数量与所述第二操作码的位数相同,且每个所述第三逻辑门的输出对应于所述第二操作码中的一位数据,各个所述第三逻辑门与所述第一逻辑门和所述第二逻辑门之间的连接关系不完全相同。
[0014]根据本专利技术的第二方面,提供了一种处理器,包括:如上所述的处理器核。
[0015]根据本专利技术的第三方面,提供了一种指令处理方法,包括:获取指令,所述指令至少包括第一操作码;对所述指令进行解码;以及根据所述解码单元的解码结果执行所述指令,其中,对所述指令进行解码的步骤至少包括:基于至少一个逻辑模块对所述第一操作码进行转换,以获得第二操作码,并对所述第二操作码进行解码,每个所述逻辑模块被配置以使得所述第一操作码对应于所述第二操作码中的至少一位数据。
[0016]采用本申请的技术方案,可以实现在不同的装置中定制不同的编码方式,可以避免指令被反编译,大大提高了计算机的保密性和安全性。
附图说明
[0017]通过以下参照附图对本公开实施例的描述,本公开的上述以及其他目的、特征和优点将更为清楚,在附图中:
[0018]图1示出了根据本公开实施例的计算机系统的示意图;
[0019]图2示出了根据本公开实施例的处理器核的示意图;
[0020]图3示出了根据本公开实施例的一个示例性的逻辑模块的示意图;
[0021]图4示出了根据本公开实施例的指令处理方法的流程图。
具体实施方式
[0022]以下将参照附图更详细地描述本公开。在各个附图中,相同的元件采用类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。此外,在图中可能未示出某些公知的部分。
[0023]应理解,本申请实施例中的A与B连接,表示A与B可以串联连接或并联连接,或者A与B通过其他的器件,本申请实施例对此不作限定。
[0024]中央处理器(Central Processing Unit,可简称为CPU)是计算机中的主要设备之一,用于执行数据处理、计算机指令处理、程序处理等任务。CPU架构是CPU所遵守的规范,在通常的CPU架构中,其执行指令通常包括取指(fetch)、解码(Decode)、执行(Execute)和写回(Write back)等过程。具体的,提取是将一条指令从存储器中取到指令寄存器的过程,解码是将指令解析为计算机执行逻辑单元可以执行的信息,执行是将解码阶段获取的信息加载到执行逻辑单元上去运行,写回是将执行阶段的处理结果数据放回到指令指定的地方(例如某个存储模块中)。
[0025]CPU执行的指令一般包含操作码、操作数等部分,操作码部分用来表达该指令的需要执行的操作,如加法、减法、移动数据等,指令中的操作码部分长度是固定的,即不同指令
其操作码部分比特(bit)数都是相同的。在相关技术的CPU实现逻辑中,对操作码部分的处理一般是采用解码模块(如,译码器),将操作码转化成处理器算数逻辑单元的选择信号,从而实现由操作码到算数处理单元的控制实现。
[0026]在相关技术中,对于相同架构(例如x86架构,ARM架构等)的计算机的解码模块,其能够解析的指令集操作码的编码方式是固定的,即同一个功能指令,只有一种操作码与其对应,不能变化。举例说明,假如某架构的CPU其加法指令的操作码是二进制0110,减法指令的操作码是1001,那么使用这款CPU的所有机器,其执行过程中,接收二进制0110操作码的指令就做加法运算,接收二进制1001操作码的指令就做减法运算,这个是固定不变的。这就导致计算机软件二进制文件中,所有的指令和编码的对应关系都是公开的,因此其二进制文件很容易被反编译,即逆向工程。通过进行逆向工程,竞争对手或黑客可以取得软件的内部逻辑,从而进行抄袭,超越甚至黑客攻击。即使在一些相关技术的CPU架构中对保密性进行了改进,其通常采用的是软件编程的改进方式,仍有被反编译的风险。
[0027]本申请的专利技术人发现了计算机的上述问题,并提供了一种进一步改进的处理器本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种处理器核,其特征在于,包括:取指单元,用于获取指令,所述指令至少包括第一操作码;解码单元,用于对所述指令进行解码;以及执行单元,用于根据所述解码单元的解码结果执行所述指令,其中,所述解码单元基于至少一个逻辑模块对所述第一操作码进行转换,以获得第二操作码,并对所述第二操作码进行解码,每个所述逻辑模块接收所述第一操作码并提供所述第二操作码中的至少一位数据。2.根据权利要求1所述的处理器核,其特征在于,每个所述逻辑模块包含多个逻辑门,每个所述逻辑模块所包含的多个逻辑门被配置为具有不完全相同的连接关系,以使得所述第一操作码对应于所述第二操作码中的所述至少一位数据。3.根据权利要求1或2所述的处理器核,其特征在于,每个所述逻辑模块包括:第一模块,包括至少一个第一逻辑门和与所述第一逻辑门数量相同的至少一个缓冲门,每个所述第一逻辑门接收所述第一操作码中的至少一位数据,并提供第一中间数据,每个所述缓冲门用于接收所述第一操作码中的所述至少一位数据并提供第二中间数据,其中,接收所述第一操作码中的相同的所述至少一个数据的所述第一逻辑门和所述第二逻辑门形成组合逻辑门。4.根据权利要求3所述的处理器核,其特征在于,每个所述逻辑模块还包括:第二模块,包括至少一个第二逻辑门,每个所述第二逻辑门连接至每个所述组合逻辑门,并选择接收每个所述组合逻辑门提供的所述第一中间数据和所述第二中间数据中的一个,每个所述第二逻辑门提供一个第三中间数据。5.根据权利要求4所述的处理器核,其特征在于,每个所述逻辑...

【专利技术属性】
技术研发人员:薛雄伟
申请(专利权)人:北京奕斯伟计算技术有限公司
类型:发明
国别省市:

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

1