处理系统及其操作方法技术方案

技术编号:2891529 阅读:152 留言:0更新日期:2012-04-11 18:40
提供了一个处理系统及其操作方法。其中先调度一条特定的指令到执行电路执行。在调度完该指令之后,于结束该指令的执行之前,即往执行电路中调度另外一条执行串行化的指令。(*该技术在2015年保护过期,可自由使用*)

【技术实现步骤摘要】
本专利申请通常涉及信息处理系统,尤其是一个。一个超标量处理系统包括多个执行部件,用于同时执行多条指令。在一些处理系统中,指令的执行顺序和它们在指令流中的程序顺序可以有所不同。但是,有些指令的执行结果受其执行顺序的影响,只能按照程序顺序执行,才会得到正确的执行结果。根据以前的常用技术,这种串行化的指令的执行通常会对程序中后续指令的执行产生不利的影响。因此,需要开发一种,在该系统中,串行化的指令的执行将对程序中后续指令的执行产生较小的不利影响。在一个中,首先将某一指令调度到执行电路中执行,然后在该指令执行完以前,将一条串行化的指令也调度到该执行电路中。本专利技术的一个技术优点是串行化的指令的执行将对程序中后续指令的执行产生较小的不利影响。参照附后的一些图表以及下面对它们所作的说明,可以更好地来理解本专利技术的一个典型的实施例及其优点。其中附图说明图1是根据较佳实施例的用于处理信息的一个处理器的框图;图2是图1中处理器的一个定点执行部件的框图3是图1中处理器的一个定序部件的框图;图4是图3中定序部件的一个排序缓冲器的概念性示意图。图5a-b是图1中处理器所处理的指令的各个阶段的示意图;图6是图1中处理器的一个排序缓冲器的概念性示意图;图7是图6中四条指令的各个阶段的示意图;图8a-d是图1中处理器的重命名缓冲器的概念性示意图;图9是在不具备较佳实施例的显著特征的情况下,四条指令的各个阶段的示意图;图10a-d是依据图9的一个处理器的重命名缓冲器的概念性示意图;图11是图1中处理器的重命名缓冲器的另一实施例的框图,图12a-c是图1中处理器的一个排序缓冲器的概念性示意图;图13图12a-c中五条指令的各个阶段的示意图;图14a-f是图1中处理器的重命名缓冲器的概念性示意图;图15是在不具备较佳实施例的显著特征的情况下,图12a-c中五条指令的各个阶段的示意图;图16a-h是在图15所示的指令处理的各个周期中,图1中处理器的重命名缓冲器的概念性示意图。通过参照图1-16h,我们可以更好地来理解本专利技术的一个典型的实施例。附图中使用同类数码来标识相应的同类图表。图1是依据较佳实施例的一个信息处理器10的结构图。在较佳实施例中,处理器10是一个单片集成电路的超标量微处理器。如下所述,它包括各种处理部件,寄存器,缓冲器,存贮器等,所有这些都由集成电路构成。再者,在较佳实施例中,处理器10根据精简指令集计算技术(RISC)进行操作。如图1所示,系统总线11与处理器10的一个总线接口部件(BIU)12相连。BIU12控制处理器10和系统总线11之间的信息传输。BIU12与处理器10的一个指令高速缓存14及一个数据高速缓存16相连。指令高速缓存14将指令输出到定序部件18。定序部件18对来自指令高速缓存14的指令作出响应,有选择地将指令输出到处理器10的其他执行电路。除了定序部件18外,在较佳实施例中,处理器10的执行电路还包括多个执行部件,即分支部件20,定点部件A(FXUA)22,定点部件B(FXUB)24,复杂定点部件(complex fixed point unit-CFXU)26,存数/取数部件(LSU)28和浮点部件(FPU)30。FXUA22、FXUB24、CFXU26和LSU28从通用体系寄存器(general purposearchitectural register-GPRs)32和定点重命名缓冲器34读入它们的源操作数信息。此外,FXUA22和FXUB24从进位寄存器(CA)42处获得进位。FXUA22、FXUB24、CFXU26和LSU28将它们操作的结果(目的操作数信息)输出到定点重命名缓冲器34的指定单元中存贮起来。再者,CFXU26从专用寄存器(SPRs)40输入源操作数信息并向它输出目的操作数信息。FPU30从浮点体系寄存器(floating point architecturalregister-FPRs)36和浮点重命名缓冲器38读入它的源操作数信息,并将它的操作结果(目的操作数信息)输出到浮点重命名缓冲器38的指定单元中存贮起来。为响应取数指令,LSU28从数据高速缓存16中输入信息,并将该信息复制到重命名缓冲器34和38的指定的一个中。如果数据高速缓存16中没有存贮该信息,数据高速缓存16则通过BIU12和系统总线11从连接在系统总线11上的系统存贮器39中读入该信息。此外,数据高速缓存能够通过BIU12和系统总线11将信息从数据高速缓存16传送到连在系统总线11上的系统存贮器39中。为响应存数指令,LSU28从GPRs32和FPRs36的指定的一个中读出信息;并将该信息复制到数据高速缓存16中。定序部件18从/向GPRs32和FPRs36输入/输出信息。分支部件20从定序部件18输入指令和指示处理器10当前状态的信号。为响应该指令和信号,分支部件20向定序部件18输出指示适当内存地址的信号,该地址所指向的内存空间存贮了一个将由处理器10来执行的指令序列。为响应这些从分支部件20发出的信号,定序部件18从指令高速缓存14中读入所指向的指令序列。如果指令序列中的一条或多条指令没有存贮在指令高速缓存14中,指令高速缓存14则(通过BIU12和系统总线11)从连接在系统总线上的系统存贮器39中读入该指令。为响应从指令高速缓存14中读入的指令,定序部件18有选择地将指令分派到相应的执行部件20、22、24、26、28或30中。每个执行部件执行某一特定指令类的一条或多条指令。例如,FXUA22和FXUB24对源操作数执行第一类定点数学运算,如加、减、与、或以及异或;CFXU26对源操作数执行第二类定点数学运算,如定点乘法和除法;FPU30对源操作数执行浮点运算,如浮点乘法和除法。当信息存放在重命名缓冲器34的某一选定的单元里时,该信息与指令指定的某一存贮单元(例如,GPRs32的某一单元或CA寄存器42)相关联,而所选定的重命名缓冲器正是为此指令而分配的。为响应从定序部件18中来的信号,存放在重命名缓冲器34中指定单元里的信息被复制到与其相关的GPRs32的某一单元(或CA寄存器42)中。正如后面将结合图6-10所深入讨论的那样,响应产生该信息的指令后完成,定序部件18操纵了对存放在重命名缓冲器34中某一选定单元里的信息的这种复制过程。该复制过程被称作“回写”。当信息存放在重命名缓冲器38中某一选定的单元里时,该信息与FPRs36中某一单元相关联。为响应从定序部件18中来的信号,存放在重命名缓冲器38中某一选定单元里的信息被复制到与其相关的FPRs36中的某一单元中。响应产生该信息的指令的完成,定序部件18操纵了对存放在重命名缓冲器38中某一选定单元里的信息的这种复制过程。通过在各个执行部件20、22、24、26、28和30中同时处理多条指令,处理器10可以获得很高的性能。相应地,每条指令都按照各阶段的序列来处理,这些阶段都可以与其他指令的阶段并行地执行。这一技术被称作“流水线操作”。本专利技术的较佳实施例的一个显著特点是,一条指令通常按六个阶段来处理,即,取指、解码、调度、执行、完成和回写。在取指阶段,定序部件18根据存放指令序列的一个或多个内存地址,有选择地从指令高速缓存14中读入一条或本文档来自技高网...

【技术保护点】
一种操作一个处理系统的方法,其特征在于包括下述步骤:调度一条特定的指令到执行电路执行;并且在调度完所述特定指令之后,于结束所述特定指令的执行之前,调度一条执行串行化指令到所述的执行电路。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:宋承润
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1