处理系统和操作方法技术方案

技术编号:2891737 阅读:194 留言: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。FXUA 22、FXUB24、CFXU 26和LSU 28从通用体系寄存器(general purposearchitectural register-GPRs)32和定点重命名缓冲器34读入它们的源操作数信息。此外,FXUA 22和FXUB 24从进位寄存器(CA)42处获得进位。FXUA 22、FXUB 24、CFXU 26和LSU 28将它们操作的结果(目的操作数信息)输出到定点重命名缓冲器34的指定单元中存贮起来。再者,CFXU 26从专用寄存器(SPRs)40输入源操作数信息并向它输出目的操作数信息。FPU 30从浮点体系寄存器(floating point architecturalregister-FPRs)36和浮点重命名缓冲器38读入它的源操作数信息,并将它的操作结果(目的操作数信息)输出到浮点重命名缓冲器38的指定单元中存贮起来。为响应取数指令,LSU 28从数据高速缓存16中输入信息,并将该信息复制到重命名缓冲器34和38的指定的一个中。如果数据高速缓存16中没有存贮该信息,数据高速缓存16则通过BIU 12和系统总线11从连接在系统总线11上的系统存贮器39中读入该信息。此外,数据高速缓存能够通过BIU 12和系统总线11将信息从数据高速缓存16传送到连在系统总线11上的系统存贮器39中。为响应存数指令,LSU 28从GPRs 32和FPRs 36的指定的一个中读出信息;并将该信息复制到数据高速缓存16中。定序部件18从/向GPRs 32和FPRs 36输入/输出信息。分支部件20从定序部件18输入指令和指示处理器10当前状态的信号。为响应该指令和信号,分支部件20向定序部件18输出指示适当内存地址的信号,该地址所指向的内存空间存贮了一个将由处理器10来执行的指令序列。为响应这些从分支部件20发出的信号,定序部件18从指令高速缓存14中读入所指向的指令序列。如果指令序列中的一条或多条指令没有存贮在指令高速缓存14中,指令高速缓存14则(通过BIU 12和系统总线11)从连接在系统总线上的系统存贮器39中读入该指令。为响应从指令高速缓存14中读入的指令,定序部件18有选择地将指令分派到相应的执行部件20、22、24、26、28或30中。每个执行部件执行某一特定指令类的一条或多条指令。例如,FXUA 22和FXUB 24对源操作数执行第一类定点数学运算,如加、减、与、或以及异或;CFXU 26对源操作数执行第二类定点数学运算,如定点乘法和除法;FPU 30对源操作数执行浮点运算,如浮点乘法和除法。当信息存放在重命名缓冲器34的某一选定的单元里时,该信息与指令指定的某一存贮单元(例如,GPRs 32的某一单元或CA寄存器42)相关联,而所选定的重命名缓冲器正是为此指令而分配的。为响应从定序部件18中来的信号,存放在重命名缓冲器34中指定单元里的信息被复制到与其相关的GPRs 32的某一单元(或CA寄存器42)中。正如后面将结合图6-10所深入讨论的那样,响应产生该信息的指令后完成,定序部件18操纵了对存放在重命名缓冲器3 4中某一选定单元里的信息的这种复制过程。该复制过程被称作“回写”。当信息存放在重命名缓冲器38中某一选定的单元里时,该信息与FPRs 36中某一单元相关联。为响应从定序部件18中来的信号,存放在重命名缓冲器38中某一选定单元里的信息被复制到与其相关的FPRs 36中的某一单元中。响应产生该信息的指令的完成,定序部件18操纵了对存放在重命名缓冲器38中某一选定单元里的信息的这种复制过程本文档来自技高网...

【技术保护点】
一个处理系统的操作方法,其特征在于包含下面的步骤:将一个序列中的大量指令调度到执行电路中执行;对于每条指令,在其执行之前判断所述指令的执行是否会引起一个异常;以及完成一条指令,只要判断出所述指令以及在所述序列中所述指令之前的每条 指令的执行均不引起一个异常,而不管所述执行电路是否已经执行完毕每条不可能引起异常的指令。

【技术特征摘要】
...

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

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

1