ABSCHLIESSEN VON VERBUNDENEN EINTRÄGEN EINER GLOBALEN ABSCHLUSSTABELLE IN EINEM OUT-OF-ORDER-PROZESSOR

    公开(公告)号:DE112018006127B4

    公开(公告)日:2022-09-29

    申请号:DE112018006127

    申请日:2018-11-09

    Applicant: IBM

    Abstract: Auf einem Computer implementiertes Verfahren, das aufweist:Erkennen in einer Anweisungssequenzbildungseinheit (ISU) eines Out-of-Order(OoO)-Prozessors, dass sämtliche Anweisungen in einer ersten Gruppe von momentan ausgeführten Anweisungen einen Status beendet aufweisen, wobei die erste Gruppe einem Eintrag in einer globalen Abschlusstabelle (GCT) zugehörig ist, die eine Zuteilungsreihenfolge und einen Status von Gruppen von momentan ausgeführten Anweisungen verfolgt; wobei die Zuteilungsreihenfolge angibt, dass es sich bei der ersten Gruppe von momentan ausgeführten Anweisungen um die älteste der GCT zugehörige Gruppe handelt;Ermitteln, dass es sich bei dem Eintrag in der GCT um einen zusammengefügten Eintrag handelt, der sowohl der ersten Gruppe von momentan ausgeführten Anweisungen als auch einer zweiten Gruppe von momentan ausgeführten Anweisungen zugehörig ist, die unmittelbar im Anschluss an die erste Gruppe von momentan ausgeführten Anweisungen zugeteilt worden ist, wobei die zweite Gruppe der momentan ausgeführten Anweisungen vor dem Zusammenführen der ersten Gruppe von momentan ausgeführten Anweisungen und der zweiten Gruppe von momentan ausgeführten Anweisungen einen eigenen Eintrag in der GCT hatte, wobei jeder GCT-Eintrag ein erstes Gruppenkennzeichen (GTAG = Group Tag) aufweist von dem ausgehend bei jedem Leeren alle jüngeren GTAGs eliminiert werden, und wobei der zweite GCT-Eintrag ein zweites Gruppenkennzeichen (GTAG = Group Tag) aufweist, von dem beim Abschließen einer Gruppe von Anweisungen ältere GTAGs festgeschrieben werden, und;Abschließen der ersten Gruppe von momentan ausgeführten Anweisungen und der zweiten Gruppe von momentan ausgeführten Anweisungen in einem einzigen Prozessorzyklus, wobei das Abschließen zumindest zum Teil auf einem Erkennen beruht, dass sämtliche Anweisungen des zusammengefügten Eintrags den Status beendet aufweisen, wobei das Abschließen ein Anfordern einer Freigabe von Ressourcen aufweist, die sowohl durch die erste als auch durch die zweite Gruppe von momentan ausgeführten Anweisungen genutzt wurden,wobei Felder jedes GCT-Eintrages zur Anzahl von Lade- und Speicheroperationen nach dem Zusammenführen eine Summe der entsprechenden Einträge vor dem Zusammenführen aufweisen, undwobei beim Festschreiben einer zusammengeführten Gruppe ausgehend vom ältesten GTAG alle Einträge in der zugehörigen GCT bis zu dem in dem zusammengeführten GCT-Eintrag angegebenen Abgeschlossen-Eintrag (Cmpl) festgeschrieben werden, undwobei das Abschließen ein Aktualisieren von Abschlussdaten bei dem entsprechenden GCT-Eintrag aufweist, wobei die Abschussdaten mindestens eines ausgewählt aus der nachfolgenden Gruppe aufweisen:eine Gesamtanzahl von Anweisungen in beiden Gruppen von Anweisungen,eine Gesamtanzahl von Ladevorgängen in beiden Gruppen von Anweisungen,eine Gesamtzahl von Speichervorgängen in beiden Gruppen von Anweisungen, unddas/die GTAG(s) für die zusammengefügte Gruppe.

    ZUSAMMENFÜHREN VON EINTRÄGEN GLOBALER ABSCHLUSSTABELLEN IN EINEM OoO-PROZESSOR

    公开(公告)号:DE112018006124B4

    公开(公告)日:2022-09-29

    申请号:DE112018006124

    申请日:2018-11-09

    Applicant: IBM

    Abstract: Ein Computer-realisiertes Verfahren, das aufweist:in einer Anweisungs-Einreihungseinheit (ISU) (ISU = instruction sequencing unit) in einem Out-of-Order-Prozessor (OoO-Prozessor) (OoO = out-of-order) Erkennen, dass alle Anweisungen in einer ersten Gruppe in Ausführung befindlicher Anweisungen einen Status „beendet“ aufweisen, wobeidie erste Gruppe in Ausführung befindlicher Anweisungen einem ersten zugeordneten Eintrag in einer globalen Abschlusstabelle (GCT) (GCT = global completion table) zugehörig ist, die eine Zuteilungsreihenfolge und einen Status von Gruppen in Ausführung befindlicher Anweisungen überwacht,die GCT eine Mehrzahl zugeordneter Einträge aufweist, die den ersten zugeordneten Eintrag und einen zweiten zugeordneten Eintrag aufweist, wobei der erste GCT-Eintrag ein erstes Gruppenkennzeichen (GTAG = Group Tag) aufweist von dem ausgehend bei jedem Leeren alle jüngeren GTAGs eliminiert werden, undwobei der zweite GCT-Eintrag ein zweites Gruppenkennzeichen (GTAG = Group Tag) aufweist von dem aus beim Abschließen einer Gruppe von Anweisungen ältere GTAGs festgeschrieben werden, undeine zweite Gruppe in Ausführung befindlicher Anweisungen, die unmittelbar vor der ersten Gruppe zugeteilt wurden, einem zweiten zugeordneten Eintrag in der GCT zugehörig ist;zumindest teilweise auf Grundlage des Erkennens Verschmelzen des ersten zugeordneten Eintrags mit dem zweiten zugeordneten Eintrag, um einen verschmolzenen zweiten zugeordneten Eintrag zu erzeugen, der nur Abschlussinformationen für die zweite Gruppe in Ausführung befindlicher Anweisungen aufweist, da bereits alle Instruktionen der ersten Gruppe beendet sind und damit deren Abschlussinformationen komplett zurückgesetzt sind; undim Anschluss an das Verschmelzen Aufheben der Zuordnung des ersten zugeordneten Eintrags in der GCT zur Verwendung durch eine neue Gruppe in Ausführung befindlicher Anweisungen, undwobei beim Festschreiben einer verschmolzenen Gruppe ausgehend vom ältesten GTAG alle Einträge in der zugehörigen GCT bis zu dem in dem verschmolzenen GCT-Eintrag angegebenen Abgeschlossen-Eintrag (Cmpl) festgeschrieben werden,wobei das Verschmelzen ein Aktualisieren des zweiten zugeordneten Eintrags, der dem Nicht-Abgeschlossenen-Eintrag entspricht, aufweist, um wiederzugeben:eine Anzahl gültiger Anweisungen im ersten zugeordneten Eintrag,eine Anzahl von Speicheroperationen in der ersten Gruppe in Ausführung befindlicher Anweisungen; undeine Anzahl von Ladeoperationen in der ersten Gruppe in Ausführung befindlicher Anweisungen.

    Skalierbare Abhängigkeitsmatrix mit einem oder einer Mehrzahl von Zusammenfassungs-Bits in einem Out-Of-Order-Prozessor

    公开(公告)号:DE112018006103B4

    公开(公告)日:2022-04-21

    申请号:DE112018006103

    申请日:2018-11-09

    Applicant: IBM

    Abstract: Auf einem Computer implementiertes Verfahren, das aufweist:Verfolgen von Abhängigkeiten zwischen Anweisungen in einer Ausgabewarteschlange, wobei das Verfolgen für jede Anweisung in der Ausgabewarteschlange aufweist:Erkennen, ob die Anweisung von jeder einer Schwellenanzahl von Anweisungen abhängig ist, die vor der Anweisung zu der Ausgabewarteschlange hinzugefügt worden sind, wobei eine Abhängigkeit zwischen der Anweisung und jeder der Schwellenanzahl von Anweisungen einzeln verfolgt wird; undErkennen, ob die Anweisung von einer oder mehreren sonstigen Anweisungen abhängig ist, die vor der Anweisung zu der Ausgabewarteschlange hinzugefügt worden sind, die nicht in jeder der Schwellenanzahl von Anweisungen enthalten sind, wobei eine Abhängigkeit zwischen der Anweisung und jeder der sonstigen Anweisungen als eine Mehrzahl von Gruppen dadurch verfolgt wird, dass eine Abhängigkeit zwischen der Anweisung und zumindest einer der Anweisungen in der Gruppe erkannt wird, wobei jede der sonstigen Anweisungen zumindest einer der Gruppen zugewiesen ist; undAusgeben von Anweisungen aus der Ausgabewarteschlange zumindest zum Teil auf Grundlage des Verfolgens.

    SKALIERBARE ABHÄNGIGKEITSMATRIX MIT EINEM ODER EINER MEHRZAHL VONZUSAMMENFASSUNGS-BITS IN EINEM OUT-OF-ORDER-PROZESSOR

    公开(公告)号:DE112018006103T5

    公开(公告)日:2020-09-17

    申请号:DE112018006103

    申请日:2018-11-09

    Applicant: IBM

    Abstract: Aspekte der Erfindung enthalten ein Verfolgen von Abhängigkeiten zwischen Anweisungen in einer Ausgabewarteschlange. Das Verfolgen enthält für jede Anweisung in der Ausgabewarteschlange ein Erkennen, ob die Anweisung von jeder einer Schwellenanzahl von Anweisungen abhängig ist, die vor der Anweisung zu der Ausgabewarteschlange hinzugefügt worden sind. Das Verfolgen enthält darüber hinaus ein Erkennen, ob die Anweisung von einer oder mehreren sonstigen Anweisungen abhängig ist, die vor der Anweisung zu der Ausgabewarteschlange hinzugefügt worden sind, die nicht in jeder der Schwellenanzahl von Anweisungen enthalten sind. Eine Abhängigkeit zwischen der Anweisung und jeder der sonstigen Anweisungen wird verfolgt. Anweisungen werden aus der Ausgabewarteschlange zumindest zum Teil auf Grundlage des Verfolgens ausgegeben.

    ABSCHLIESSEN VON VERBUNDENEN EINTRÄGEN EINER GLOBALEN ABSCHLUSSTABELLE IN EINEM OUT-OF-ORDER-PROZESSOR

    公开(公告)号:DE112018006127T5

    公开(公告)日:2020-08-13

    申请号:DE112018006127

    申请日:2018-11-09

    Applicant: IBM

    Abstract: Aspekte der Erfindung enthalten ein Erkennen in einem Out-of-Order(OoO)-Prozessor, dass sämtliche Anweisungen in einer ersten Gruppe von momentan ausgeführten Anweisungen einen Status beendet aufweisen. Bei der ersten Gruppe von momentan ausgeführten Anweisungen handelt es sich um die älteste Gruppe in einem Eintrag einer globalen Abschlusstabelle (GCT). Es wird ermittelt, dass es sich bei dem Eintrag in der GCT um einen zusammengefügten Eintrag handelt, der sowohl der ersten Gruppe von momentan ausgeführten Anweisungen als auch einer zweiten Gruppe von momentan ausgeführten Anweisungen zugehörig ist, die unmittelbar im Anschluss an die erste Gruppe von momentan ausgeführten Anweisungen zugeteilt worden ist. Die erste Gruppe von momentan ausgeführten Anweisungen und die zweite Gruppe von momentan ausgeführten Anweisungen werden in einem einzigen Prozessorzyklus abgeschlossen. Das Abschließen beruht zumindest zum Teil auf einem Erkennen, dass sämtliche Anweisungen in der ersten Gruppe von momentan ausgeführten Anweisungen einen Status beendet aufweisen. Das Abschließen enthält ein Anfordern einer Freigabe von Ressourcen, die sowohl durch die erste als auch durch die zweite Gruppe von momentan ausgeführten Anweisungen genutzt werden.

    ZUSAMMENFÜHREN VON EINTRÄGEN GLOBALER ABSCHLUSSTABELLEN IN EINEM OoO-PROZESSOR

    公开(公告)号:DE112018006124T5

    公开(公告)日:2020-08-13

    申请号:DE112018006124

    申请日:2018-11-09

    Applicant: IBM

    Abstract: Aspekte der Erfindung weisen ein Erkennen auf, dass alle Anweisungen in einer ersten Gruppe in Ausführung befindlicher Anweisungen einen Status „beendet“ aufweisen. Die erste Gruppe in Ausführung befindlicher Anweisungen ist einem ersten zugeordneten Eintrag in einer globalen Abschlusstabelle (GCT) zugehörig, die eine Zuteilungsreihenfolge und einen Status von Gruppen in Ausführung befindlicher Anweisungen überwacht. Die GCT beinhaltet eine Mehrzahl zugeordneter Einträge, die den ersten zugeordneten Eintrag und einen zweiten zugeordneten Eintrag beinhaltet. Eine zweite Gruppe in Ausführung befindlicher Anweisungen, die unmittelbar vor der ersten Gruppe zugeteilt wurden, ist einem zweiten zugeordneten Eintrag in der GCT zugehörig. Zumindest teilweise auf der Grundlage des Erkennens wird der erste zugeordnete Eintrag mit dem zweiten zugeordneten Eintrag verschmolzen, um in der GCT einen einzigen verschmolzenen zweiten zugeordneten Eintrag zu erzeugen, der Abschlussinformationen sowohl für die erste Gruppe in Ausführung befindlicher Anweisungen als auch die zweite Gruppe in Ausführung befindlicher Anweisungen beinhaltet. Die Zuordnung des ersten zugeordneten Eintrags wird anschließend aufgehoben.

Patent Agency Ranking