用于存储命令的方法和装置的制作方法

文档序号:6651286阅读:100来源:国知局
专利名称:用于存储命令的方法和装置的制作方法
技术领域
本发明总体涉及计算机系统,更具体地,涉及用于利用计算机系统存储命令的方法和装置。
背景技术
引用相同地址的命令可由计算机系统等接收,其可被存储在一个或多个相应的队列中,并且可不按这些命令被接收到的顺序来执行。然而,如果计算机系统不按顺序执行这些命令,则该计算机系统必须跟踪这些命令的依赖性,以确保每一命令接收正确的数据(例如,在这些命令按顺序被执行时由每一命令接收的数据)。此外,因为存储在队列中的命令在执行之前可能从该队列中移除,所以计算机系统应该调整这样的移除。在传统的计算机系统中,跟踪存储在队列条目中的命令的依赖性以及在执行之前调整存储在该队列中的命令的移除,需要一种占用较大区域的复杂硬件设计。
用于实现这种命令存储和移除操作的改进的方法和装置是需要的。

发明内容
在本发明的第一个方面,提供一种用于存储命令的第一方法。该第一方法包括步骤(1)接收引用地址的新命令;(2)确定该新命令是否依赖于存储在待决命令的队列中引用该地址的至少一个在前接收的命令;(3)识别该至少一个在前接收的命令中最近接收的命令;以及(4)将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。
在本发明的第二方面,提供一种用于存储命令的第一装置。该第一装置包括(1)处理器;(2)主存储器;以及(3)用于存储待决命令的队列的逻辑。该逻辑包括存储器,并且连接到处理器和主存储器。该逻辑用于(a)接收引用地址的新命令;(b)确定该新命令是否依赖于存储在上述待决命令的队列中引用该地址的至少一个在前接收的命令;(c)识别该至少一个在前接收的命令中最近接收的命令;以及(d)将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。根据本发明的这些和其他方面,提供了许多其他方面。
通过以下的详细描述、所附权利要求以及附图,本发明的其他特征和方面将变得更加完全地显而易见。


图1是根据本发明实施例的用于存储命令的装置的框图;图2是包括在根据本发明实施例的用于存储命令的装置中的逻辑的框图;以及图3示出了根据本发明实施例的用于存储命令的方法。
具体实施例方式
如果第一命令要求第二命令在第一命令可执行之前完成执行,则第一命令(例如,引用一个地址)可能依赖于第二命令(例如,引用相同的地址)。本发明提供了用于跟踪引用相同地址的命令的依赖性的方法和装置。计算机系统等可实现读队列和/或写队列,每一队列都包括用于存储命令的多个条目。在传统的系统中,读队列的条目可包括用于存储在读队列中的命令可能依赖的每一写队列条目的位。此外,写队列的条目可包括用于存储在写队列中的命令可能依赖的每一读队列和其余写队列条目的位。对于支持大量队列条目的计算机系统来说,必须存储大量这样的位,因此需要大量用于存储这样的位的硬件。
相反,根据本方法和装置,读队列或写队列的条目可包括指示存储在该条目中的命令是否依赖于另一命令(例如,这一命令是否需要另一命令在该命令可执行之前结束执行)的位(例如,依赖性有效位)或状态编码,以及用于存储队列条目的编号的指针,其中该队列条目存储该另一命令。此外,读队列或写队列的条目可包括用于指示另一命令是否依赖于存储在该条目中的命令的位(例如,链接位)。根据本方法和装置,当接收到新命令时,使用逻辑来设置这些位和指针。例如,当接收到一个新命令,并且读队列和/或写队列包括该新命令所依赖的多个在前接收的命令时,该逻辑可以设置(例如,断言)依赖性有效位并设置到存储该新命令所依赖的这些在前接收的命令中最近接收的命令的队列条目的编号的指针。该逻辑可应用与已经存储在队列中的相应命令相关联的链接位,来标识该新命令所依赖的最近接收的命令。按照这种方式,可通过形成单个链接列表来跟踪命令依赖性。
在至少一个实施例中,可以仅选择存储在其中未设置依赖性有效位的队列条目中的命令来执行。一旦该命令被选择和/或被执行,便重设(例如去断言(deassert))其指针包括其中的命令被执行的条目的编号的任何条目的依赖性有效位。
此外,根据本方法和装置,队列条目可包括用于标识从队列中移除(例如,在执行前)的命令的位(例如,无效待决位)。计算机系统(例如,存储器控制器106)可选择移除其中设置(例如,断言)了无效待决位且未设置依赖性有效位的队列条目中的命令。一旦选择移除该命令,便重设(例如,去断言)其指针包括其中的命令被选择移除的条目的编号的任何条目的依赖性有效位。
通过使用上面描述的位和指针,本方法和装置可以减少跟踪存储在一个或多个队列中引用相同地址的命令的依赖性和/或调整存储在队列中的命令在执行前的移除所需的位的总体数量,从而减小该方法和装置所需的区域。
图1是根据本发明实施例的用于存储命令的装置的框图。参照图1,该用于存储命令的装置100可以是计算机系统等。装置100可包括通过总线108连接到存储器控制器106的一个或多个处理器102-104。存储器控制器106可连接到存储器110(例如,主存储器)110。存储器控制器106可包括逻辑、寄存器、存储器等的任何适当的组合。处理器102-104可在总线108上输出引用主存储器110的地址的命令,存储器控制器106可接收此命令。作为响应,存储器控制器106可访问主存储器110的该地址,从而为该命令提供服务。
存储器控制器106可包括用于在为命令提供服务之前(例如,当该命令待决时)存储该命令的一个或多个队列。例如,存储器控制器106可包括一个或多个读队列112(仅示出一个)和一个或多个写队列114(仅示出一个),用于存储待决命令。在一个实施例中,存储器控制器106包括读队列112和写队列114,每一队列具有32个条目(但是读队列112和/或写队列114可包括更大或更小数量的条目)。因此,存储器控制器106可在队列112、114中存储达64个命令。一个或多个读队列112或一个或多个写队列114的用于存储命令的条目116可包括(例如,存储)一个位(例如,依赖性有效位118),其指示存储在条目116中的命令是否依赖于存储在读队列112或写队列114中的另一命令(例如,该命令是否需要另一命令在该命令可执行之前完成执行)。例如,引用主存储器地址的读命令可依赖于一个写命令,该写命令在引用相同存储器地址的读命令之前被接收。为了确保读命令从该存储器地址中访问正确的数据,对该地址的写命令的执行应该在读命令执行之前完成,因此,可以设置存储该读命令的条目的依赖性有效位118。
如果包括在队列112、114的条目116中的依赖性有效位118指示存储在该条目116中的命令依赖于另一命令(例如,如果设置了依赖性有效位118),则条目116包括存储编号的指针120,该编号是存储该另一命令的队列条目116的编号。此外,读队列112或写队列114中的条目116可包括一个位(例如,链接位122),用于指示是否另一命令(例如,待决命令)依赖于存储在条目116中的命令。以这种方式,与存储在队列112、114中可能不具有依赖于它们的命令的其他待决命令相比,可以对存储在该条目116中的命令(例如,写命令)指派一个优先级。另外或可选择地,一个或多个读队列112或者一个或多个写队列114中用于存储命令的条目116可包括一个位(例如,无效待决位124),用于标识从该队列中移除的命令(例如,在执行前)。计算机系统100(例如,存储器控制器106)可以选择移除存储在其中无效待决位124被设置而依赖性有效位118未被设置的队列条目116中的命令。
存储器控制器106包括逻辑125(例如,逻辑设备、寄存器、存储器等的任何适当组合),用于在计算机系统100(例如,存储器控制器106)接收和/或执行一个或多个命令时,确定和/或调整上述对应于队列112、114的条目116的位和指针的值。更具体地,当计算机系统100(例如,存储器控制器106)接收和/或执行一个或多个读或写命令时,逻辑125可以确定和/或调整依赖性有效位118、指针120、链接位122和/或无效待决位124的值。以这种方式,计算机系统100(例如,存储器控制器106)可以使用引用相同地址的待决命令的单个链接列表,其可以根据该单个链接列表在命令的执行之前调整待决命令的移除。下面参照图2对逻辑125的细节进行描述。
存储器控制器106可包括和/或连接到命令仲裁器126,命令仲裁器126用于从读队列112或写队列114中的一个选择命令来为其提供服务。另外或可选择地,命令仲裁器126可从读队列112或写队列114中选择一个命令来移除(例如,在执行前)。
图2是包括在根据本发明实施例的用于存储命令的装置中的逻辑的框图。参照图2,包括在用于存储命令的装置100中(例如,包括在存储器控制器106中)的逻辑125可包括存储器200,诸如内容可寻址存储器(CAM),用于存储对应于每一队列条目116的条目。因此,内容可寻址存储器200中的一个或多个条目可包括各个命令所引用的地址。例如,对于上面描述的实施例,CAM 200可包括64个条目。然而,CAM 200可以存储更大或更小数目的条目。此外,每一CAM条目可以存储指示相应的队列条目有效的队列有效性。
通过接收诸如命令(例如输入命令)所引用的地址的输入数据,CAM200可用于执行查找,并输出包括该输入数据(例如,地址)的CAM 200的条目的指示。例如,CAM 200可输出对应于每一CAM条目的位,其指示该CAM条目是否包括该输入数据。因此,CAM 200可以输出64位(但是CAM 200可以输出更大或更小数目的位)。以这种方式,由CAM 200输出的每一位指示对应于队列条目116的CAM条目是否包括CAM 200的输入数据(例如,地址)。由包括在用于执行逻辑与操作(或类似操作)的逻辑202中的各个逻辑门(未示出)输入CAM 200所输出的位以及对应于队列条目116的链接位124的反相版本,其中CAM 200所输出的位与对应于队列条目116的CAM条目相对应。以这种方式,逻辑202可以输出对应于每一队列条目116的位。例如,在上面描述的实施例中,逻辑202可以输出64位。逻辑202可用来为除了存储最近接收的包括该输入地址的这些队列条目的CAM条目之外的所有CAM条目,对存储包括与CAM 200的地址输入相匹配的地址的队列条目的CAM条目的身份进行屏蔽(例如,门关断(gate off))。
逻辑202的输出被连接到编码逻辑204的输入。编码逻辑204用于通过第一输出206输出第一数据,诸如指示CAM条目是否包括由CAM 200输入的数据(例如,是否发生CAM“命中”)的位。此外,编码逻辑204可通过第二输出208输出多个位作为第二数据。第一数据(例如,指示是否发生CAM“命中”)和第二数据可分别用作为新命令的依赖性有效位118和指针120,该指针指示命令所依赖的队列条目编号。例如,在一个实施例中,指针120可是6位,其最高位指示指针120是否包括读队列112或写队列114的地址,而其余的位指示队列条目116编号。以这种方式,逻辑125可以提供对应于新命令的依赖性有效位118和指针120的值。
逻辑125可以提供存储在队列112、114中的一个或多个命令的链接位122的值。例如,当逻辑125提供对应于最近接收的命令的依赖性有效位118的值,以指示该命令依赖于在前接收的命令时,逻辑125可提供对应于该在前接收的命令的链接位122的值。另外或可选择地,逻辑125可提供对应于存储在队列112-114中的一个或多个命令的无效待决位124的值。
现在参照图1-2以及示出了根据本发明实施例的用于存储命令的方法的图3,对用于存储命令的装置100的操作进行描述。参照图3,在步骤302,方法300开始。在步骤304,接收引用地址的新命令。例如,处理器102-104可将引用主存储器地址的新命令放置在总线108上,存储器控制器106可接收该新命令。当该新命令待决时,存储器控制器106可能需要确定存储该新命令的位置。因此,在步骤306,确定该新命令是否依赖于存储在待决命令的队列中引用该地址的至少一个在前接收的命令。例如,存储器控制器106的逻辑125可确定该新命令是否依赖于存储在待决命令的队列112、114中的在前接收的命令。更具体地,CAM 200包括对应于可存储待决命令的队列条目116的条目。CAM 200输入该新命令所引用的地址,并为每一CAM条目输出一个位,该位指示该CAM条目是否包括由该新命令所引用的地址。以这种方式,CAM 200可以识别存储与该新命令引用相同地址的命令(例如,在前接收的命令)的队列条目。因为存储在识别出的队列条目中的命令引用与新命令相同的地址,所以该新命令可能依赖于存储在一个或多个识别出的队列条目中的命令。
如果在步骤306确定该新命令依赖于存储在待决命令的队列中的引用该地址的至少一个在前接收的命令,则执行步骤308。在步骤308,识别该至少一个在前接收的命令中最近接收的命令。逻辑125可识别该至少一个在前接收的命令中最近接收的命令。如上所述,逻辑125可为存储在队列112、114中的该至少一个在前接收的命令提供链接位122。例如,如果存储器控制器106确定最近接收的命令依赖于在前接收的命令,则可设置对应于在前接收的命令的链接位122(例如,断言到高逻辑状态)。以这种方式,除了引用该地址的最近接收的命令之外,对应于引用地址的所有命令的各个链接位122可被断言。
因为对应于队列条目116的反相链接位值与CAM 200输出的位一起被输入,其中该位与对应于该队列条目的CAM条目相对应,因此,除了与CAM条目相对应的位以外,其中该CAM条目对应于存储该至少一个在前接收的命令中最近接收的命令的队列条目116,用于执行逻辑与操作的逻辑202用来屏蔽对应于包括该新命令所引用的地址的CAM条目的所有位。更具体地,用于执行逻辑与操作的逻辑202可以输出多个位,这些位中只有一个位被断言。该被断言的位对应于CAM条目,该CAM条目对应于存储对于该相同地址的至少一个在前接收的命令中最近接收的命令的队列条目。以这种方式,具有所设置的链接位的命令被排除在CAM 200输入的地址与CAM条目中的地址之间的地址匹配之外,而仅将引用由CAM200输入的地址的最近在前接收的命令识别为匹配。因此,逻辑125识别该至少一个在前接收的命令中最近接收的命令。
在步骤310,将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。更具体地,上述的编码逻辑204可输出6位,作为指向存储被识别为该至少一个在前接收的命令中最近接收的命令的队列条目116的指针。逻辑125可提供要存储在用于存储该新命令的队列条目116中的指针120,籍此将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。如上所述,编码逻辑204可输出可作为依赖性有效位118的第一数据。更具体地,逻辑125向存储该新命令的队列条目116提供该第一数据,作为依赖性有效位118,籍此指示该新命令依赖于存储在由指针120指示的队列条目116中的命令。以这种方式,将该新命令存储在待决命令的队列中。
其后,执行步骤314。在步骤314,方法300结束。
可选地,如果在步骤306确定该新命令不依赖于存储在待决命令的队列中引用该地址的至少一个在前接收的命令,则执行步骤312。例如,如果新命令所引用的地址不包括在CAM条目中,则执行步骤312。在步骤312,该新命令可以存储在队列112、114的条目中。因为该新命令不依赖于存储在待决命令的队列112、114中的至少一个在前接收的命令,所以可以对编码逻辑204输出的第一数据去断言(例如,低逻辑状态)。逻辑125可以向用于存储该新命令的队列条目116提供由编码逻辑204输出的第一数据,用作为依赖性有效位118值,籍此指示该新命令不依赖于在前接收的命令。逻辑125可向存储该新命令的队列条目116提供空指针值或去断言的指针值(例如,低逻辑状态)。其后,可以执行步骤314,其中方法300结束。
此外,如上所述,装置100可包括命令仲裁器126,命令仲裁器126用于从队列112、114中选择一个命令来执行。命令仲裁器126可选择存储在队列条目116中的命令,该队列条目116包括例如低逻辑状态的未被设置的依赖性有效位118。引用地址的命令可以以上述方式被存储在引用该地址的命令的单个链接列表中。因此,命令仲裁器126可以从引用该地址的命令的单个链接列表中选择存储在包括未被设置的依赖性有效位(例如,去断言的位)的队列条目116中的命令来执行。逻辑125可确定用于存储各个命令的一个或多个队列条目116包括存储编号的指针120,并为一个或多个队列条目116重设依赖性有效位118,从而使这些命令与被选择执行的命令去关联,其中的编号是存储被选择执行的命令的队列条目116的编号。可执行被选择执行的命令。
此外(或可选地),可使队列状态与存储在待决命令的队列中的命令(例如,第一命令)相关联,从而在该命令执行之前,根据队列状态将其从待决命令的队列中移除。第一命令可以是例如存储在引用相同地址的命令的单个链接列表中间的命令。存储器控制器106可接收将第一命令在执行前从该链接列表中移除的请求。例如,存储器控制器106可接收重试第一命令的请求,其要求将第一命令从该队列中移除。响应于将第一命令从队列112、114中移除的请求,逻辑125可为包括在存储第一命令的队列条目116中的无效待决位124提供一个值(例如,断言的值)。以这种方式,被提供给存储第一命令的队列条目116的无效待决位124可以将诸如“无效待决”的队列状态与第一命令相关联,从而使第一命令可在执行前从队列112、114中移除。尽管装置100使用被断言的无效待决位124,将队列状态与第一命令相关联,但在其他的实施例中,可使用另一位(例如,去断言的位)值将队列状态与一个命令相关联。此外,尽管上面描述了无效待决位124,将队列状态与一个命令相关联,但在一些实施例中,可以使用状态的编码,该编码可以由多个位来表示。
然而,在操作期间,如果命令与队列状态相关联,并且不依赖于另一命令,则装置100可以(例如,仅可以)从队列中选择一个命令来移除。更具体地,命令仲裁器126可以从条目116中选择一个命令,该条目116的无效待决位124被断言,而依赖性有效位118未被断言。因此,当第一命令依赖于第二命令时,命令仲裁器126不能选择第一命令来移除。然而,以上面描述的方式,当命令仲裁器126选择第二命令来执行时,包括存储编号的指针的一个或多个队列条目116的依赖性有效位118将被去断言,其中该编号是存储第二命令的队列条目116的编号,从而使存储在一个或多个队列条目116中的命令与第二命令去关联。以这种方式,可以移除第一命令与第二命令的关联。因此,其后,命令仲裁器126可从队列112、114中(例如,在执行前)选择第一命令来移除,并可从队列112、114中移除该命令。
通过使用存储命令的方法300,可以使用相应的依赖性有效位118、指针120和链接位122来跟踪引用相同地址的队列命令的依赖性。另外或可选地,相应的无效待决位124可被用来标识在执行前从队列112、114移除的队列命令。通过使用上面描述的位和指针,本方法和装置可以减少跟踪存储在一个或多个队列112、114中引用相同地址的命令的依赖性和/或调整存储在队列112、114中的命令在执行前的移除所需的位的总体数量,从而相对于传统的系统而言,减少该方法和装置所需的区域。
前面的描述仅公开了本发明的示例性实施例。对于本领域的普通技术人员来说,落入本发明的范围内的对上面公开的装置和方法的修改将是显而易见的。例如,在一些实施例中,在一个时间段(例如,周期)内,命令仲裁器126可以从队列112、114中选择命令来执行,或者从队列112、114中选择命令来移除。可选地,在其他的实施例中,在该时间段内,命令仲裁器126可以从队列112、114中选择命令来执行,和/或从队列112、114中选择命令来移除。在这些实施例中,逻辑125也被相应地使用。此外,尽管在上面的一些实施例中,包括在存储命令的队列条目116中的被断言的依赖性有效位指示该命令依赖于另一命令,但在其他的实施例中,被去断言的依赖性有效位118也实现这一指示。类似地,包括在存储命令的队列条目116中的被去断言的链接位122可指示该命令具有依赖于它的其他命令,和/或包括在用于存储命令的队列条目116中的被去断言的无效待决位124可识别在执行前移除的命令。在这些实施例中,存储器控制器106的逻辑可以被相应的调整。此外,尽管在上面描述了依赖性有效位118、链接位122和无效待决位124,但在一些实施例中,也可以使用可由一个或多个位表示的状态的编码来取代依赖性有效位118、链接位122和/或无效待决位124。
因此,尽管本发明已被结合其示例性实施例而公开,但应该理解,其他实施例也可落入由下面的权利要求所定义的本发明的精神和范围内。
权利要求
1.一种存储命令的方法,包括接收引用地址的新命令;确定该新命令是否依赖于存储在待决命令的队列中引用该地址的至少一个在前接收的命令;识别该至少一个在前接收的命令中最近接收的命令;以及将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。
2.如权利要求1的方法,其中确定上述新命令是否依赖于存储在待决命令的队列中引用该地址的至少一个在前接收的命令包括在存储器中执行对该新命令所引用的地址的查找。
3.如权利要求1的方法,其中识别上述至少一个在前接收的命令中最近接收的命令包括识别存储在上述待决命令的队列中的不依赖于存储在该待决命令的队列中的另一命令的引用该地址的在前接收的命令。
4.如权利要求3的方法,其中识别存储在上述待决命令的队列中的不依赖于存储在该待决命令的队列中的另一命令的引用该地址的在前接收的命令包括访问与该存储在该待决命令的队列中引用该地址的在前接收的命令相关联的位,该位指示该在前接收的命令是否依赖于另一在前接收的命令。
5.如权利要求1的方法,其中将上述新命令与上述至少一个在前接收的命令中最近接收的命令相关联包括设置与该新命令相关联的位,该位指示该新命令是否依赖于在前接收的命令。
6.如权利要求1的方法,进一步包括选择上述至少一个在前接收的命令中最近接收的命令来执行;以及将该新命令与被选择来执行的命令去关联。
7.如权利要求6的方法,进一步包括选择上述新命令来执行。
8.如权利要求6的方法,进一步包括将队列状态与存储在上述待决命令的队列中的第一命令相关联,以便根据该队列状态,可在第一命令执行之前将其从该待决命令的队列中移除。
9.如权利要求1的方法,进一步包括将队列状态与存储在上述待决命令的队列中引用上述地址的第一命令相关联,以便根据该队列状态,可在第一命令执行之前将其从该待决命令的队列中移除。
10.如权利要求9的方法,其中将队列状态与存储在上述待决命令的队列中引用上述地址的第一命令相关联包括设置与存储在该待决命令的队列中的该命令相关联的一位,该位指示第一命令是否要在执行前从该待决命令的队列中移除。
11.如权利要求10的方法,进一步包括在第一命令执行前,将其从上述待决命令的队列中移除。
12.如权利要求11的方法,其中第一命令被与在第一命令之前接收的引用上述地址的第二命令相关联;以及进一步包括选择第一命令与其相关联的第二命令来执行;以及将第一命令与第二命令去关联。
13.如权利要求9的方法,进一步包括选择上述至少一个在前接收的命令中最近接收的命令来执行;以及将上述新命令与被选择来执行的命令去关联。
14.一种用于存储命令的装置,包括处理器;主存储器;以及用于存储待决命令的队列的逻辑,该逻辑包括存储器、连接到上述处理器和主存储器且其用于接收引用地址的新命令;确定该新命令是否依赖于存储在上述待决命令的队列中引用该地址的至少一个在前接收的命令;识别该至少一个在前接收的命令中最近接收的命令;以及将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。
15.如权利要求14的装置,其中上述逻辑进一步用于在包括在该逻辑中的存储器中执行对上述新命令所引用的地址的查找。
16.如权利要求14的装置,其中上述逻辑进一步用于识别存储在上述待决命令的队列中的不依赖于存储在该待决命令的队列中的另一命令的引用上述地址的在前接收的命令。
17.如权利要求16的装置,其中上述逻辑进一步用于访问与上述存储在待决命令的队列中引用上述地址的在前接收的命令相关联的位,该位指示该在前接收的命令是否依赖于另一在前接收的命令。
18.如权利要求14的装置,其中上述逻辑进一步用于设置与上述新命令相关联的位,该位指示该新命令是否依赖于在前接收的命令。
19.如权利要求14的装置,其中上述逻辑进一步用于选择上述至少一个在前接收的命令中最近接收的命令来执行;以及将该新命令与被选择来执行的命令去关联。
20.如权利要求19的装置,其中上述逻辑进一步用于选择上述新命令来执行。
21.如权利要求19的装置,其中上述逻辑进一步用于将队列状态与存储在上述待决命令的队列中的第一命令相关联,以便根据该队列状态,可在第一命令执行之前将其从该待决命令的队列中移除。
22.如权利要求14的装置,其中上述逻辑进一步用于将队列状态与存储在上述待决命令的队列中引用上述地址的第一命令相关联,以便根据该队列状态,可在第一命令执行之前将其从该待决命令的队列中移除。
23.如权利要求22的装置,其中上述逻辑进一步用于设置与存储在上述待决命令的队列中的该命令相关联的一位,该位指示第一命令是否要在执行前从该待决命令的队列中移除。
24.如权利要求23的装置,其中上述逻辑进一步用于在第一命令执行前,将其从上述待决命令的队列中移除。
25.如权利要求24的装置,其中第一命令被与在第一命令之前接收的引用上述地址的第二命令相关联;以及上述逻辑进一步用于选择第一命令与其相关联的第二命令来执行;以及将第一命令与第二命令去关联。
26.如权利要求22的装置,其中上述逻辑进一步用于选择上述至少一个在前接收的命令中最近接收的命令来执行;以及将上述新命令与被选择来执行的命令去关联。
全文摘要
在第一方面,提供一种用于存储命令的第一方法。该第一方法包括步骤(1)接收引用地址的新命令;(2)确定该新命令是否依赖于存储在待决命令的队列中引用该地址的至少一个在前接收的命令;(3)识别该至少一个在前接收的命令中最近接收的命令;以及(4)将该新命令与该至少一个在前接收的命令中最近接收的命令相关联。还提供了许多其它方面。
文档编号G06F9/30GK1786901SQ20051012919
公开日2006年6月14日 申请日期2005年11月14日 优先权日2004年12月9日
发明者M·D·贝洛斯, P·A·冈菲尔德, L·J·兰布雷希特 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1