一种处理指令的方法及装置制造方法及图纸

技术编号:18893747 阅读:22 留言:0更新日期:2018-09-08 10:37
本发明专利技术实施例提供一种处理指令的方法及装置,涉及计算机技术领域,能够节省处理器执行任务的时间,降低处理器的功耗。该方法包括:处理器获取第一指令,该第一指令中包括第一序列,该第一指令用于指示处理器读取与该第一序列对应的至少一个微操作;处理器根据该第一指令,读取与该第一序列对应的至少一个微操作,该至少一个微操作为保存的对至少一个第二指令译码之后得到的结果;处理器执行该至少一个微操作。

A method and device for processing instructions

The embodiment of the invention provides a method and a device for processing instructions, relating to the field of computer technology, which can save the time for the processor to perform tasks and reduce the power consumption of the processor. The method comprises: a processor obtains a first instruction including a first sequence of instructions for instructing the processor to read at least one microoperation corresponding to the first sequence; according to the first instruction, the processor reads at least one microoperation corresponding to the first sequence, the at least one microoperation being The result saved after decoding at least one second instruction; the processor performs the at least one microoperation.

【技术实现步骤摘要】
一种处理指令的方法及装置
本专利技术实施例涉及计算机
,尤其涉及一种处理指令的方法及装置。
技术介绍
处理器是设备的运算核心和控制核心,在处理器执行任务时,通常可以完成取指令、译指令(即对指令译码)和执行微操作(微操作是对指令译码之后得到的结果)等工作。目前的处理器在执行大量重复的任务(一个任务通常由至少一个指令组成)的情况下,处理器会重复的获取相同的指令,并对相同的指令重复译码,而处理器重复的获取相同的指令,并对相同的指令重复译码会导致处理器执行任务的时间较长,增加处理器的功耗。
技术实现思路
本申请提供一种处理指令的方法及装置,能够节省处理器执行任务的时间,降低处理器的功耗。为达到上述目的,本申请采用如下技术方案:第一方面,提供一种处理指令的方法,该方法包括:处理器获取用于指示该处理器读取与第一序列对应的至少一个微操作的第一指令(该第一指令中包括第一序列),并且处理器根据该第一指令,读取与该第一序列对应的该至少一个微操作,以及处理器执行该至少一个微操作。其中,该至少一个微操作为保存的对至少一个第二指令译码之后得到的结果。本申请中,当处理器执行任务(一个任务通常由至少一个第二指令组成)时,由于在该处理器获取用于指示该处理器读取与第一序列对应的至少一个微操作的第一指令(该第一指令中包括第一序列)之后,该处理器可以根据该第一指令,读取与该第一序列对应的至少一个微操作;并且由于该至少一个微操作为已保存的对该至少一个第二指令译码之后得到的微操作,因此在该处理器重复执行由该至少一个第二指令组成的任务时,该处理器可以无需重复获取该至少一个第二指令,并且也无需对该至少一个第二指令重复译码,即该处理器可直接执行已保存的对该至少一个第二指令译码之后得到的微操作(即该处理器可直接完成该至少一个第二指令的执行),从而可以节省该处理器执行任务的时间,降低该处理器的功耗。在第一方面的第一种可能的实现方式中,上述至少一个微操作的数量具体为至少两个,至少两个微操作可以包括至少一个第一微操作和至少一个第二微操作,该至少一个第一微操作中的每个第一微操作中包括第一操作地址,一个第一微操作中的第一操作地址为处理器首次执行该一个第一微操作时,该一个第一微操作的操作地址。上述处理器执行该至少一个微操作的方法可以包括:处理器修正每个第一微操作中的第一操作地址,且处理器执行修正第一操作地址后的每个第一微操作和至少一个第二微操作。在第一方面的第二种可能的实现方式中,上述至少一个微操作为至少一个第一微操作,该至少一个第一微操作中的每个第一微操作中包括第一操作地址,一个第一微操作中的第一操作地址为处理器首次执行该一个第一微操作时,该一个第一微操作的操作地址。上述处理器执行该至少一个微操作的方法可以包括:处理器修正每个第一微操作中的第一操作地址,且处理器执行修正第一操作地址后的每个第一微操作。本申请中,微操作可以分为两类,一类为用于获取数据或者存储数据的第一微操作,另一类为用于对数据运算的第二微操作。由于第一微操作用于获取数据或者存储数据,且数据通常存储在存储介质中的某个存储地址中,因此第一微操作中包括数据的存储地址,第一微操作中数据的存储地址可以称为该第一微操作的操作地址。而由于第二微操作用于对数据运算,且运算通常通过寄存器实现,不涉及存储地址,因此第二微操作中可以不包括数据的存储地址,也即第二微操作中可以无操作地址。通常,由于不同数据的存储地址不同,因此在处理器首次执行一个第一微操作以获取或存储一个数据时,该数据的存储地址与处理器再次执行该一个第一微操作以获取或存储另一个数据时该数据的存储地址可能不同,也就是说,通常处理器在首次执行一个第一微操作时该一个第一微操作的操作地址(例如该一个第一微操作中包括的第一操作地址)与处理器再次执行该一个第一微操作时该一个第一微操作的操作地址可能不同。本申请中,由于保存的每个第一微操作中均包括第一操作地址,因此为了保证每次能够正确执行一个第一微操作,除了首次执行该一个第一微操作之外,在其余每次执行该一个第一微操作之前,均可以先修正该一个第一微操作中的第一操作地址。在第一方面的第三种可能的实现方式中,上述第一指令中还可以包括地址偏移量,对于上述一个第一微操作,该地址偏移量为第二操作地址(该第二操作地址为处理器当前执行一个第一微操作时,该一个第一微操作的操作地址)相对于该一个第一微操作中的第一操作地址的偏移量。由于对于每个第一微操作,上述地址偏移量均相同,因此上述处理器修正每个第一微操作中的第一操作地址的方法可以包括:对于每个第一微操作,处理器均可以执行下述过程(1),以修正该每个第一微操作中的第一操作地址。其中,过程(1)可以为:处理器根据该地址偏移量,将一个第一微操作中的第一操作地址修正为第二操作地址。本申请中,由于处理器在首次执行一个第一微操作时该一个第一微操作的操作地址与处理器再次执行该一个第一微操作时该第一微操作的操作地址不同,并且上述一个第一微操作中的第一操作地址为该处理器首次执行一个第一微操作时,该一个第一微操作的操作地址,因此在处理器再次执行该一个第一微操作之前,可以根据其获取的指令中的地址偏移量,将该一个第一微操作中的第一操作地址修正为当前执行该一个第一微操作时,该一个第一微操作的操作地址(即第二操作地址),以保证在处理器再次执行该一个第一微操作时,可以正确执行该一个第一微操作。在第一方面的第四种可能的实现方式中,在处理器首次执行上述至少一个第二指令的情况下,本申请提供的处理指令的方法还可以包括:处理器获取用于指示处理器保存第一序列和至少一个微操作之间的对应关系的第三指令(该第三指令中包括第一序列),并且处理器根据该第三指令,保存上述第一序列和上述至少一个微操作(即对上述至少一个第二指令译码之后得到的结果)之间的对应关系。第二方面,提供一种处理器,该处理器包括控制单元和处理单元。该控制单元用于获取用于指示控制单元读取与第一序列对应的至少一个微操作的第一指令(该指令中包括第一序列),并根据该第一指令,读取与该第一序列对应的该至少一个微操作。处理单元用于执行控制单元读取的该至少一个微操作。其中,该至少一个微操作为保存的对至少一个第二指令译码之后得到的结果。在第二方面的第一种可能的实现方式中,上述的至少一个微操作的数量具体为至少两个,至少两个微操作可以包括至少一个第一微操作和至少一个第二微操作,该至少一个第一微操作中的每个第一微操作中包括第一操作地址,一个第一微操作中的第一操作地址为控制单元首次执行该一个第一微操作时,该一个第一微操作的操作地址。上述处理单元,具体用于修正每个第一微操作中的第一操作地址,以及执行修正第一操作地址后的每个第一微操作和该至少一个第二微操作。在第二方面的第二种可能的实现方式中,上述的至少一个微操作为至少一个第一微操作,该至少一个第一微操作中的每个第一微操作中包括第一操作地址,一个第一微操作中的第一操作地址为处理单元首次执行该一个第一微操作时,该一个第一微操作的操作地址。上述处理单元,具体用于修正每个第一微操作中的第一操作地址,以及执行修正第一操作地址后的每个第一微操作。在第二方面的第三种可能的实现方式中,上述第一指令中还可以包括地址偏移量,对于一个第一微操作,该地址偏移本文档来自技高网...

【技术保护点】
1.一种处理指令的方法,其特征在于,包括:处理器获取第一指令,所述第一指令中包括第一序列,所述第一指令用于指示所述处理器读取与所述第一序列对应的至少一个微操作,所述至少一个微操作为保存的对至少一个第二指令译码之后得到的结果;所述处理器根据所述第一指令,读取与所述第一序列对应的所述至少一个微操作;所述处理器执行所述至少一个微操作。

【技术特征摘要】
1.一种处理指令的方法,其特征在于,包括:处理器获取第一指令,所述第一指令中包括第一序列,所述第一指令用于指示所述处理器读取与所述第一序列对应的至少一个微操作,所述至少一个微操作为保存的对至少一个第二指令译码之后得到的结果;所述处理器根据所述第一指令,读取与所述第一序列对应的所述至少一个微操作;所述处理器执行所述至少一个微操作。2.根据权利要求1所述的方法,其特征在于,所述至少一个微操作的数量具体为至少两个,至少两个微操作包括至少一个第一微操作和至少一个第二微操作,所述至少一个第一微操作中的每个第一微操作中包括第一操作地址,一个第一微操作中的第一操作地址为所述处理器首次执行所述一个第一微操作时,所述一个第一微操作的操作地址;所述处理器执行所述至少一个微操作,包括:所述处理器修正所述每个第一微操作中的第一操作地址;所述处理器执行修正第一操作地址后的所述每个第一微操作和所述至少一个第二微操作。3.根据权利要求1所述的方法,其特征在于,所述至少一个微操作为至少一个第一微操作,所述至少一个第一微操作中的每个第一微操作中包括第一操作地址,一个第一微操作中的第一操作地址为所述处理器首次执行所述一个第一微操作时,所述一个第一微操作的操作地址;所述处理器执行所述至少一个微操作,包括:所述处理器修正所述每个第一微操作中的第一操作地址;所述处理器执行修正第一操作地址后的所述每个第一微操作。4.根据权利要求2或3所述的方法,其特征在于,所述第一指令中还包括地址偏移量,对于所述一个第一微操作,所述地址偏移量为第二操作地址相对于所述一个第一微操作中的第一操作地址的偏移量,所述第二操作地址为所述处理器当前执行所述一个第一微操作时,所述一个第一微操作的操作地址;所述处理器修正所述每个第一微操作中的第一操作地址,包括:对于所述每个第一微操作,所述处理器均执行下述步骤,以修正所述每个第一微操作中的第一操作地址:所述处理器根据所述地址偏移量,将所述一个第一微操作中的第一操作地址修正为所述第二操作地址。5.根据权利要求1-4任意一项所述的方法,其特征在于,在所述处理器首次执行所述至少一个第二指令的情况下,所述方法还包括:所述处理器获取第三指令,所述第三指令中包括所述第一序列,所述第三指令用于指示所述处理器保存所述第一序列和所述至少一个微操作之间的对应关系;所述处理器根据所述第三指令,保存所述第一序列和所述至少一个微操作之间的对应关系。6.一种处理器,其特征在于,所述处理器包括控制单元和处理单元;所述控制单元,用于获取第一指令,所述第一指令中包括第一序列,并根据所述第一指令,读取与所述第一序列对应的至少一个微操作;其中,所述第一指令用于指示所述控制单元读取与所述第一序列对应的所述至少一个微操作,所述至少一个微操作为保存的对至少一个第二指令译码之后得到的结果;所述处理单元,用于执行所述控制单元读取的所述至少一个微操作。7.根据权利要求6所述的处理...

【专利技术属性】
技术研发人员:黄罡梁文亮
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

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

1