带有指令标识装置的数据处理系统制造方法及图纸

技术编号:2893042 阅读:227 留言:0更新日期:2012-04-11 18:40
本数据处理系统包括执行第一型指令的指令执行电路,根据第二型指令从存储器中取指令和数据的取出电路,一个指令解码器用于对取出的指令解码,并将第一型指令分配给指令排队电路,将第二型指令分配给取出电路。当执行第一型指令所需的数据未被取出时,指令排队电路能够存储被解码的第一型指令,同时将这些指令标识;当数据取出时,该电路清除这些指令的标识符,指令排队电路逐次将去掉标识的第一型指令提供给指令执行电路。(*该技术在2010年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及数据处理系统,特别是具有执行一个单独顺序指令的多处理单元的数据处理系统。在现代Von Neuman体系结构中遇到的一个共同问题是从相同的存储器中存取指令和数据。在现代数据处理系统中,访问存储器与在处理单元中执行指令相比是非常费时间的。访问存储器带来的费时问题由于采用高速缓冲存储器而在一定程度上缓和了,这是一种速度非常快的存储器,与数据处理系统相连,保持频繁使用的信息。然而,如果在高速缓冲存储器中得不到要访问的信息,那么就需要另外的时间去访问主存储器。在传统的流水线数据处理系统中,指令是按顺序、但是是以一种伪并行方式执行的。每条指令被分成几个阶段执行,当执行一个指令阶段时,其它指令的其它阶段也被并行执行。作为流水线处理的结果,指令按顺序并发执行,而指令的顺序关系保持不变。然而,通常当一条指令需要从存储器中提取数据时,数据从存储器中提取时流水线是停止的,这样,在流水线处理中并发式并行执行指令的许多优点就不存在了。本专利技术的目的就是为了减小由访问存储器而造成的损失。过去采用的解决这个问题的方法是对一个寄存器进行标识,该寄存器是装入操作的目标(即,寄存器接收从存储器来的数据)。这一技术在1988年12月16日递交的共同未决再申请07/285.827号中讨论过,该申请源于最初是1984年5月31日递交的美国专利4,630,195号。根据该专利申请中阐述的原理,处理机的每个寄存器包括一个标识符存储装置。当指令被执行而不需要从被标识的寄存器中取数据时,指令被允许继续执行。然而,如果执行指令的过程取决于存储在被标识的寄存器中的数据,并且寄存器并没有收到被标识符指出的数据,指令就不能被执行。本专利技术的目的是为包括多个处理机的数据处理系统提供一个标识装置,其中在第一处理机中执行指令,而由第二处理机为指令提取所需的数据。本专利技术通过允许顺序执行流水线指令,从而提供顺序执行指令的能力,同时能够从存贮器中提取数据。根据本专利技术,有一个数据处理系统,它包括一个指令执行电路,用于执行第一型指令。取出电路用来从存储器中取出指令,并且根据第二型指令,从存储器中取出数据。还包括一个指令解码器,它对取出的指令解码,并将第一型指令送给指令排队电路,将第二型指令送给取出电路。当执行这些指令所需的数据还未被取出时,指令排队电路存储被解码的第一型指令,并标识这些第一型指令。当执行指令所需的数据已经取出时,清除这些指令的标识符。指令排队电路将去掉标识的指令逐次送给指令执行电路执行。在最佳实施例中,有一个多处理系统,其中存储器存有指令和数据。在这个最佳实施例中,有两个处理机,用于执行从指令控制单元来的指令。在这个最佳实施例中,第一型指令是浮点指令,它仅仅可以由一个浮点处理机执行。第二型指令是装入指令,用于向浮点处理机寄存器提供浮点数据,并且由定点处理机执行。定点处理机实际上计算放在与存储器相连的总线上的地址,以便存取浮点数据。此外,在最佳实施例中,第一队列用来存储寄存器至寄存器指令和寄存器至存储器指令,而第二队列用来存储存储器至寄存器指令。最佳实施例中的指令解码装置具有对多条并行指令解码的能力。装入指令存储在一个指令队列中(存储器至寄存器队列),与另外的存储在另外队列中的浮点算术指令分开。当浮点算术指令需要数据、而该数据作为装入指令的结果正在被装入时,浮点算术指令在其指令队列中被标识。当一条指令没有标识符,它便提供给浮点处理机执行。通过参照附图对体现本专利技术的最佳方式的详细描述,可以更好地理解本专利技术的上述内容以及其它目的、方面和优点。其中附图说明图1是数据处理系统的框图;图2是表示位于浮点单元中的指令队列的框图;图3是表示与浮点单元16中的指令队列互连的指令解码逻辑电路的框图;图4是表示标识过程的流程图;图5是表示通过标识过程的指令流的状态图;图6A是指令的第一序列;图6B表示图6A中指令序列的流水线执行过程的时序图;图7A是第二指令序列;图7B表示图7A中指令序列的流水线执行过程的时序图;图8A是第三指令序列;图8B表示图8A中指令序列的流水线执行过程的时序图。图1表示数据处理系统的框图,该系统包括一个与指令单元12相连的存储器10。指令单元12的输出是两种指令,它们被供给定点处理单元14或浮点处理单元16。定点处理单元包括一个指令队列27,称作“顺序指令执行队列”。浮点处理单元16包括一个指令队列34,它是由定点处理单元14在第二队列30中执行的同步指令,指令队列30包括称作“异步指令”的指令。除了“同步指令”之外,浮点处理单元16的指令执行过程与定点处理单元14的指令执行过程无关。“同步指令”包括装入数据指令,它们将存储器20的数据提供给浮点处理单元16的寄存器。定点处理单元14完成对这些装入指令的地址计算,比如一条索引装入指令的定点计算。定点处理单元14从存储器10中取出数据。然后数据经数据高速缓冲存储器18送至浮点处理单元16中的寄存器。浮点处理单元16的装入数据指令被包含在队列34和27中。装入指令存储的协调通过线29完成。图2表示一个框图及一个浮点处理单元16。指令由预取缓冲控制器20进行检查,确定这些指令是否有效。如果一条指令是一条有效指令,就将其存储在浮点指令队列22中。然后,这些指令在解码逻辑电路24的控制下,二条指令同时在解码器26和28中被解码。被解码的指令然后送至指令队列30和34,并被放入第一个适用的缓冲器中。除装入数据指令以外的浮点处理单元指令被存储在指令队列30中。这包括所有的浮点处理单元寄存器至寄存器以及寄存器至存储器的操作。浮点处理单元16存储器至寄存器的操作(装入数据指令)存储在指令队列34中。执行控制单元32在适当的时候调度队列30和34中的指令。在操作过程中,指令队列30中的指令可能要求数据存于浮点处理单元寄存器中。该数据必须在这些指令可以被调度执行之前存储。本专利技术的标识装置为这些指令的适当管理提供了保证,保证当指令调度时,为这些指令所需的数据已经适当地存于寄存器中。图3表示本专利技术的标识机构。该专利技术由浮点单元16中的电路组成。在浮点单元16中,解码器0的寄存器26和解码器1的寄存器28存储被解码的指令。在解码过程中,利用比较器40、42、44、46和48进行比较,确定正在被解码的任何指令是否依赖于存储在装入指令队列34中(图3中表示为队列存储单元70和72)的装入指令的执行。队列存储单元70和72都包括一个六位“T”描述符,它是浮点执行单元16中的寄存器地址,正在被装入指令装入。这些寄存器地址被输入比较器40、42、44、46和48,与由解码电路26和28中的指令指定的寄存器进行比较。应该懂得,在最佳实施例中,一个浮点指令最多包括三个源寄存器和一个目的寄存器。源寄存器以“A”、“B”和“C”表示。目的寄存器或目标寄存器以“T”表示。在最佳实施例中,浮点执行单元16提供的指令执行乘法和加法即“A*B+C”。根据该格式,乘法/加法运算的结果放入一个目标寄存器“T”中。如果对任何正在被解码的指令中带有寄存器指示符的寄存器进行正比较,那么当在指令缓冲器62中存储指令时,设置合适的标识符。标识符在标识符控制电路68的控制下存储在一个两位缓冲器64中。缓冲器50、54、58和62对应于图2中的指本文档来自技高网...

【技术保护点】
一个数据处理系统,其特征在于:包括:用于执行第一指令的指令执行装置;取出装置,该装置用于从一个存储器中取出指令和根据第二指令从该存储器中取出数据;指令解码装置,用于对取出的指令解码,将所说的第一指令分配给一个指令排队装置,并且将 所说的第二指令分配给所说的取出装置;以及所说的指令排队装置,用于存储被解码的第一指令,当为执行所需要的数据还没有被取出时,标识被存储的第一指令,当为执行所需要的数据被取出时,清除所说的第一指令的标识符,并且逐次将去掉标识的第一指令提供给 指令执行装置。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:特罗伊奈尔希克斯麦鸿尼古元福
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

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

1