【技术实现步骤摘要】
对应于多个微操作的复杂程序指令的译码
本技术涉及数据处理领域。更具体地,本技术涉及在支持并行处理线程的数据处理装置中对程序指令进行译码以生成微操作。
技术介绍
一些指令集包括一些与将由处理电路执行的多个微操作相对应的复杂程序指令,每个微操作表示与程序指令相关的操作的一部分。因此,指令译码器可对程序指令进行译码以生成将由处理电路执行的微操作。一些处理装置支持多个并行处理线程。分离的获取单元可被提供用于各自线程以触发获取微操作到处理电路中。共享指令译码器可被提供用于生成各自的获取单元所需的微操作。典型指令译码器将复杂程序指令作为单一的实体进行译码,从而使得:响应于来自获取单元中的一个的、对复杂程序指令进行译码的请求,指令译码器然后将在连续周期中生成与该复杂程序指令相对应的所有微操作。但是,这在共享指令译码器在多个对应于处理线程的获取单元之间共享的系统中可能有问题。如果获取单元中的一个在获取对应于复杂程序指令的微操作时中途停滞,则不能接受对同一复杂程序指令的进一步的微操作,则共享译码器也将停滞,因为其要保证完成所有对复杂程序指令的微操作。这就阻止了其他获取单元从指令译码器接收经译码的微操作,直到第一获取单元的停滞被解决,即使那些其他获取单元本可以接受微操作。这导致处理性能降低。本技术需求解决这一问题。
技术实现思路
从一个方面看,本专利技术提供了一种数据处理装置,包括:处理电路,该处理电路被配置为并行处理多个处理线程;共享指令译码器,该共享指令译码器被配置为对程序指令进行译码以生成要由处理电路处理的微操作,程序指令包括与多个微操作相对应的至少一个复杂程序指令;以及多 ...
【技术保护点】
一种数据处理装置,包括:处理电路,该处理电路被配置为并行处理多个处理线程;共享指令译码器,该共享指令译码器被配置为对程序指令进行译码以生成要由所述处理电路处理的微操作,所述程序指令包括与多个微操作相对应的至少一个复杂程序指令;以及多个获取单元,该多个获取单元被配置为获取由所述共享指令译码器生成的微操作以用于由所述处理电路进行处理,每个获取单元与所述多个线程中的至少一个相关联;其中所述共享指令译码器被配置为:响应于由所述多个获取单元中的一个触发的译码请求,生成每个微操作;并且所述共享指令译码器被配置为:响应于分离的译码请求,个体地生成复杂程序指令的多个微操作,每个分离的译码请求标识了所述复杂程序指令的哪个微操作将由所述共享指令译码器响应于所述译码请求而生成。
【技术特征摘要】
2013.10.09 GB 1317857.91.一种数据处理装置,包括:处理电路,该处理电路被配置为并行处理多个处理线程;共享指令译码器,该共享指令译码器被配置为对程序指令进行译码以生成要由所述处理电路处理的微操作,所述程序指令包括与多个微操作相对应的至少一个复杂程序指令;以及多个获取单元,该多个获取单元被配置为获取由所述共享指令译码器生成的微操作以用于由所述处理电路进行处理,每个获取单元与所述多个处理线程中的至少一个相关联;其中所述共享指令译码器被配置为:响应于由所述多个获取单元中的一个触发的译码请求,生成每个微操作;并且所述共享指令译码器被配置为:响应于分离的译码请求,个体地生成复杂程序指令的多个微操作,每个分离的译码请求标识了所述复杂程序指令的哪个微操作将由所述共享指令译码器响应于所述译码请求而生成。2.如权利要求1所述的数据处理装置,包括多个微操作队列,每个微操作队列对应于所述获取单元中的一个,且被配置为将由相应的获取单元获取的用于由所述处理电路进行处理的所述微操作排成队列。3.如权利要求1和2的任一个所述的数据处理装置,其中所述获取单元被配置为生成所述译码请求,该译码请求标识了将由所述共享指令译码器生成且要被获取以用于由所述处理电路进行处理的选定的微操作。4.如权利要求1和2的任一个所述的数据处理装置,包括微操作缓存,该微操作缓存被配置为存储由所述共享指令译码器生成的所述微操作。5.如权利要求4所述的数据处理装置,其中获取电路被配置为向所述微操作缓存提供获取请求以请求从所述微操作缓存获取选定的微操作;并且所述微操作缓存被配置为:如果所述选定的微操作未被存储于所述微操作缓存中,则触发对于所述选定的微操作的译码请求。6.如权利要求4所述的数据处理装置,其中所述微操作缓存被配置为:支持每处理周期的一定数目的获取请求,该数目比所述共享指令译码器所支持的每处理周期的译码请求的数目更大。7.如权利要求1所述的数据处理装置,其中对于每个微操作,所述共享指令译码器被配置为生成相应的控制标志,该相应的控制标志指示所述微操作是否是相应的程序指令的最后一个微操作。8.如权利要求7所述的数据处理装置,其中每个获取单元被配置为维护程序计数器和微程序计数器以用于标示将被获取的下一个微操作,所述程序计数器指示与所述下一个微操作相对应的程序指令,且所述微程序计数器指示相应的程序指令的哪个微操作是所述下一个微操作。9.如权利要求8所述的数据处理装置,其中每个获取单元被配置为:(i)如果所获取的微操作的控制标志指示所述所获取的微操作不是相应的程序指令的最后一个微操作,则递增所述微程序计数器;以及(ii)如果所获取的微操作的控制标志指示所述所获取的微操作是相应的程序指令的最后一个微操作,则递增所述程序计数器。10.如权利要求1所述的数据处理装置,包括指令缓冲器,该指令缓冲器被配置为存储先前已由所述共享指令译码器译码的一个或多个程序指令。11.如权利要求10所述的数据处理装置,其中响应于...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。