Einrichtung und Verfahren zum Multiplizieren, Addieren/Subtrahieren und Akkumulieren von gepackten Datenelementen

    公开(公告)号:DE102018006798A1

    公开(公告)日:2019-04-04

    申请号:DE102018006798

    申请日:2018-08-28

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen von dualen gleichzeitigen Multiplikationen, Subtraktion/Addition und Akkumulation von gepackten Datenelementen. Zum Beispiel weist eine Ausführungsform eines Prozessors Folgendes auf: einen Decodierer zum Decodieren eines Befehls zum Erzeugen eines decodierten Befehls; ein erstes Quellregister zum Speichern von ersten und zweiten gepackten Datenelementen; ein zweites Quellregister zum Speichern von dritten und vierten gepackten Datenelementen; eine Ausführungsschaltung zum Ausführen des decodierten Befehls, wobei die Ausführungsschaltung Folgendes aufweist: eine Multiplikatorschaltung zum Multiplizieren der ersten und dritten gepackten Datenelemente zum Erzeugen eines ersten temporären Produkts und zum gleichzeitigen Multiplizieren der zweiten und vierten gepackten Datenelemente zum Erzeugen eines zweiten temporären Produkts, wobei die ersten bis vierten gepackten Datenelemente alle eine erste Breite aufweisen; eine Schaltung zum Negieren des ersten temporären Produkts zum Erzeugen eines negierten ersten Produkts; eine Addiererschaltung zum Hinzufügen des ersten negierten Produkts zu einem ersten akkumulierten gepackten Datenelement von einem dritten Quellregister zum Erzeugen eines ersten Ergebnisses, wobei das erste Ergebnis eine zweite Breite aufweist, welche mindestens doppelt so groß wie die erste Breite ist; wobei die Addiererschaltung gleichzeitig das zweite temporäre Produkt zu einem zweiten akkumulierten gepackten Datenelement hinzufügt, um ein zweites Ergebnis mit der zweiten Breite zu erzeugen; wobei das erste und zweite Ergebnis in einer bestimmten ersten und zweiten Datenelementposition innerhalb eines Zielregisters gespeichert werden.

    VORRICHTUNG UND VERFAHREN ZUM VERSCHIEBEN VON GEPACKTEN QUADWORDS UND ZUM EXTRAHIEREN VON GEPACKTEN WÖRTERN

    公开(公告)号:DE102018132205A1

    公开(公告)日:2019-06-27

    申请号:DE102018132205

    申请日:2018-12-14

    Applicant: INTEL CORP

    Abstract: Vorrichtung und Verfahren zum Ausführen von Linksverschiebungsoperationen an gepackten Quadword-Daten. Beispielsweise umfasst eine Ausführungsform eines Prozessors Folgendes: einen Dekodierer zum Dekodieren eines Linksverschiebungsbefehls zum Erzeugen eines decodierten Linksverschiebungsbefehls; ein erstes Quellregister zum Speichern einer Vielzahl von gepackten Quadword-Datenelementen, wobei jedes der gepackten Quadword-Datenelemente ein Vorzeichenbit aufweist; Ausführungsschaltung zum Ausführen des dekodierten Linksverschiebungsbefehls, wobei die Ausführungsschaltung eine Verschiebeschaltung mit Vorzeichenerhaltungslogik zum Linksverschieben erster und zweiter gepackter Quadword-Datenelemente von ersten bzw. zweiten gepackten Quadword-Datenelementpositionen im ersten Quellregister um einen Betrag, der in einem Direktwert oder in einem Steuerwert in einem zweiten Quellregister spezifiziert ist, umfasst, wobei die Linksverschiebung zum Erzeugen erster und zweiter links verschobener Quadwords erfolgt, wobei die Verschiebeschaltung zum Schreiben von Nullen in Bitpositionen dient, die durch das Linksverschieben der gepackten Quadword-Datenelemente freigelegt werden; wobei die Vorzeichenerhaltungslogik eine Kopie des Vorzeichenbits behält, während die Verschiebeschaltung die Linksverschiebungsoperationen durchführt; wobei die Ausführungsschaltung eine Auswahl von 16 höchstwertigen Bits des ersten und zweiten linksverschobenen Quadwords, einschließlich des Vorzeichenbits, bewirkt, die in 16 niedrigstwertige Bitbereiche der ersten bzw. zweiten Quadword-Datenelementpositionen eines Zielregisters zu schreiben sind, wobei das Vorzeichenbit in die höchstwertige Bitposition von jedem der 16 niedrigstwertigen Bitbereiche geschrieben wird.

    EINRICHTUNG UND VERFAHREN ZUM NACH-RECHTS-VERSCHIEBEN VON GEPACKTEN QUADRUPELWÖRTERN UND EXTRAHIEREN VON GEPACKTEN DOPPELWÖRTERN

    公开(公告)号:DE102018128949A1

    公开(公告)日:2019-06-27

    申请号:DE102018128949

    申请日:2018-11-19

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen von Nach-links-Verschiebeoperationen an gepackten Quadrupelwort-Daten. Beispielsweise umfasst eine Ausführungsform eines Prozessors: einen Decodierer zum Decodieren eines Nach-rechts-Verschiebungsbefehls zum Erzeugen eines decodierten Nach-rechts-Verschiebungsbefehls; ein erstes Quellregister zum Speichern von mehreren gepackten Quadrupelwort-Datenelementen, wobei jedes der gepackten Quadrupelwort-Datenelemente ein Vorzeichenbit umfasst; eine Ausführungsschaltungsanordnung zum Ausführen des decodierten Nach-rechts-Verschiebungsbefehls, wobei die Ausführungsschaltungsanordnung eine Verschiebungsschaltungsanordnung mit Vorzeichenbeibehaltungslogik, zum Nach-rechts-Verschieben von ersten und zweiten gepackten Quadrupelwort-Datenelementen von ersten bzw. zweiten gepackten Quadrupelwort-Datenelementorten in dem ersten Quellregister um einen Betrag, der in einem Direktausführungswert oder in einem Steuerwert in einem zweiten Quellregister angegeben ist, umfasst wobei das Nach-rechts-Verschieben dazu dient, erste und zweite nach rechts verschobene Quadrupelwörter zu erzeugen, die Vorzeichenbeibehaltungslogik zum Einschieben des Vorzeichenbits in beliebige Bitpositionen, die durch das Nach-rechts-Verschieben der ersten und zweiten Quadrupelwörter freigelegt sind; wobei die Ausführungsschaltungsanordnung die Auswahl von 32 höchstwertigen Bits der ersten und zweiten nach rechts verschobenen Quadrupelwörter, einschließlich des Vorzeichenbits, die jeweils in 32 niedrigstwertige Bit-Regionen der ersten und zweiten Quadrupelwort-Datenelementorte eines Zielregisters zu schreiben sind, veranlasst.

    Einrichtung und Verfahren zum Durchführen von dualer vorzeichenbehafteter und vorzeichenloser Multiplikation von gepackten Datenelementen

    公开(公告)号:DE102018006737A1

    公开(公告)日:2019-04-11

    申请号:DE102018006737

    申请日:2018-08-24

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen von dualen gleichzeitigen Multiplikationen von gepackten Datenelementen. Eine Ausführungsform eines Prozessors umfasst beispielsweise: einen Decodierer zum Decodieren eines ersten Befehls zum Erzeugen eines decodierten Befehls; ein erstes Quellregister zum Speichern einer ersten Vielzahl von gepackten Bytedatenelementen; ein zweites Quellregister zum Speichern einer zweiten Vielzahl von gepackten Bytedatenelementen; eine Ausführungsschaltungsanordnung zum Ausführen des decodierten Befehls, wobei die Ausführungsschaltungsanordnung Folgendes umfasst: eine Multipliziererschaltungsanordnung zum gleichzeitigen Multiplizieren jedes der gepackten Bytedatenelemente der ersten Vielzahl mit einem entsprechenden gepackten Bytedatenelement der zweiten Vielzahl zum Erzeugen von mehreren Produkten; eine Addiererschaltungsanordnung zum Addieren angegebener Sätze der Produkte zum Erzeugen von temporären Ergebnissen für jeden Satz von Produkten; Nullerweiterungs- oder Vorzeichenerweiterungsschaltungsanordnung zum Nullerweitern oder Vorzeichenerweitern der temporären Ergebnisse für jeden Satz zum Erzeugen eines erweiterten temporären Ergebnisses für jeden Satz; eine Akkumulationsschaltungsanordnung zum Kombinieren von jedem der erweiterten temporären Ergebnisse mit einem in einem dritten Quellregister gespeicherten ausgewählten gepackten Datenwert zum Erzeugen von mehreren endgültigen Ergebnissen; und ein Zielregister zum Speichern der mehreren endgültigen Ergebnisse als mehrere gepackte Datenelemente in angegebenen Datenelementpositionen.

    Einrichtung und Verfahren zum Durchführen einer dualen signierten und unsignierten Multiplikation von gepackten Datenelementen

    公开(公告)号:DE102018006807A1

    公开(公告)日:2019-04-04

    申请号:DE102018006807

    申请日:2018-08-28

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen von dualen gleichzeitigen Multiplikationen von gepackten Datenelementen. Zum Beispiel umfasst eine Ausführungsform eines Prozessors Folgendes: einen Decodierer zum Decodieren eines ersten Befehls zum Erzeugen eines decodierten Befehls; ein erstes Quellregister zum Speichern einer ersten Vielzahl von gepackten Doppelwortdatenelementen; ein zweites Quellregister zum Speichern einer zweiten Vielzahl von gepackten Doppelwortdatenelementen; und eine Ausführungsschaltung zum Ausführen des decodierten Befehls, wobei die Ausführungsschaltung Folgendes umfasst: eine Multiplikatorschaltung zum Multiplizieren eines ersten Doppelwortdatenelements von dem ersten Quellregister mit einem zweiten Doppelwortdatenelement von dem zweiten Quellregister zum Erzeugen eines ersten Quadwordprodukts und zum gleichzeitigen Multiplizieren eines dritten Doppelwortdatenelements von dem ersten Quellregister mit einem vierten Doppelwortdatenelement von dem zweiten Quellregister zum Erzeugen eines zweiten Quadwordprodukts; und ein Zielregister zum Speichern des ersten Quadwordprodukts und des zweiten Quadwordprodukts als erstes und zweites gepacktes Quadworddatenelement.

    Einrichtung und Verfahren zum Verschieben von Quadwords und Extrahieren von gepackten Wörtern

    公开(公告)号:DE102018006800A1

    公开(公告)日:2019-04-04

    申请号:DE102018006800

    申请日:2018-08-28

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen von Rechtsverschiebungsoperationen bei gepackten Quadword-Daten. Zum Beispiel umfasst eine Ausführungsform eines Prozessors: einen Decodierer zum Decodieren eines Rechtsverschiebungsbefehls zum Erzeugen eines decodierten Rechtsverschiebungsbefehls; ein erstes Quellregister zum Speichern von mehreren gepackten Quadword-Datenelementen; eine Ausführungsschaltung zum Ausführen des decodierten Rechtsverschiebungsbefehls, wobei die Ausführungsschaltung eine Verschiebungsschaltung zum Rechtsverschieben mindestens von ersten und zweiten gepackten Quadword-Datenelementen jeweils von ersten und zweiten gepackten Quadword-Datenelementorten in dem ersten Quellregister um einen Betrag, der in einem unmittelbaren Wert oder in einem Steuerwert in einem zweiten Quellregister spezifiziert ist, zum Erzeugen von ersten und zweiten nach rechts verschobenen Quadwords umfasst; wobei die Ausführungsschaltung die Auswahl von 16 höchstwertigen Bits der ersten und zweiten nach rechts verschobenen Quadwords veranlasst, die in die 16 niederwertigsten Bit-Regionen von jeweils ersten und zweiten Quadword-Datenelementorten eines Zielregisters zu schreiben sind; und das Zielregister die spezifizierte Gruppe der 16 höchstwertigen Bits der ersten und zweiten nach rechts verschobenen Quadwords speichert.

    EINRICHTUNG UND VERFAHREN ZUM DURCHFÜHREN EINER DUALEN VORZEICHENBEHAFTETEN UND VORZEICHENLOSEN MULTIPLIKATION VON GEPACKTEN DATENELEMENTEN

    公开(公告)号:DE102018006743A1

    公开(公告)日:2019-04-04

    申请号:DE102018006743

    申请日:2018-08-24

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen von dualen gleichzeitigen Multiplikationen von gepackten Datenelementen. Zum Beispiel umfasst eine Ausführungsform eines Prozessors Folgendes: einen Decoder zum Decodieren eines ersten Befehls zum Erzeugen eines decodierten Befehls; ein erstes Quellregister zum Speichern einer ersten Vielzahl von gepackten Datenelementen; ein zweites Quellregister zum Speichern einer zweiten Vielzahl von gepackten Datenelementen; eine Ausführungsschaltung zum Ausführen des decodierten Befehls, die Ausführungsschaltung umfassend: eine Multipliziererschaltung zum Durchführen von gleichzeitigen dualen Multiplikationen eines ersten gepackten Datenelements aus dem ersten Quellregister mit einem zweiten gepackten Datenelement aus dem zweiten Quellregister und eines dritten gepackten Datenelements aus dem ersten Quellregister mit einem vierten gepackten Datenelement aus dem zweiten Quellregister, um erste bzw. zweite Produkte zu erzeugen, wobei die ersten und dritten gepackten Datenelemente eine Breite aufweisen, die zweimal so groß ist wie eine Breite der zweiten und vierten gepackten Datenelemente; die Multipliziererschaltung zum Auswählen der ersten und dritten gepackten Datenelemente aus dem ersten Quellregister und der zweiten und vierten gepackten Datenelemente aus dem zweiten Quellregister gemäß dem unmittelbaren Element, um die ersten und zweiten Produkte zu erzeugen.

    SYSTEME, VORRICHTUNGEN UND VERFAHREN FÜR DUALEN KOMPLEX DURCH KOMPLEXE KONJUGATIONSMULTIPLIKATION VON VORZEICHENBEHAFTETEN WÖRTERN

    公开(公告)号:DE102018006013A1

    公开(公告)日:2019-04-04

    申请号:DE102018006013

    申请日:2018-07-30

    Applicant: INTEL CORP

    Abstract: Ausführungsformen von Systemen, Vorrichtungen und Verfahren für eine duale komplexe Zahl durch komplexe Konjugations-Multiplikation in einem Prozessor sind beschrieben. Zum Beispiel führt eine Ausführungsschaltung einen decodierten Befehl aus zum: Multiplexen von Datenwerten aus einer Mehrzahl von Positionen von gepackten Datenelementen in dem ersten und dem zweiten Quelloperanden für gepackte Daten zu mindestens einer Multiplikatorschaltung, wobei der erste und der zweite Quelloperand für gepackte Daten eine Mehrzahl von Paaren komplexer Zahlen aufweisen, wobei jedes Paar komplexer Zahlen Datenwerte an gemeinsamen Positionen von gepackten Datenelementen in dem ersten und dem zweiten Quelloperanden für gepackte Daten aufweist; Berechnen eines reellen Teils und eines imaginären Teils eines Produkts einer ersten komplexen Zahl und einer komplexen Konjugation einer zweiten komplexen Zahl; und Speichern des reellen Teils in einer ersten Position von gepackten Datenelementen in dem Zieloperanden und Speichern des imaginären Teils in einer zweiten Position von gepackten Datenelementen in dem Zieloperanden.

    Einrichtung und Verfahren zum horizontalen Vektor-Addieren von signierten/ unsignierten Wörtern und Doppelwörtern

    公开(公告)号:DE102018129281A1

    公开(公告)日:2019-07-04

    申请号:DE102018129281

    申请日:2018-11-21

    Applicant: INTEL CORP

    Abstract: Eine Einrichtung und ein Verfahren zum Durchführen einer gepackten horizontalen Addition von Wörtern und Doppelwörtern. Eine Ausführungsform eines Prozessors umfasst zum Beispiel: einen Decoder zum Decodieren eines gepackten horizontalen Addierbefehls zum Erzeugen eines decodierten gepackten horizontalen Addierbefehls, wobei der gepackte horizontale Addierbefehl einen Opcode und Operanden, die eine Vielzahl gepackter Wörter identifizieren, einschließt; ein Quellregister zum Speichern einer ersten Vielzahl gepackter Wörter; einen Ausführungsschaltkreis zum Ausführen des decodierten Befehls, wobei der Ausführungsschaltkreis umfasst: einen Operandenauswahlschaltkreis zum Identifizieren eines ersten und zweiten gepackten Worts aus dem Quellregister gemäß dem Operanden und dem Opcode des gepackten horizontalen Addierbefehls; einen Addiererschaltkreis zum Addieren des ersten und zweiten gepackten Worts, um eine temporäre Summe zu erzeugen; einen temporären Speicher mit mindestens 17 Bits zum Speichern der temporären Summe; einen Sättigungsschaltkreis zum Sättigen der temporären Summe, falls erforderlich, um ein Endergebnis zu erzeugen; ein Zielregister zum Speichern des Endergebnisses als ein gepacktes Ergebniswort an einer designierten Datenelementposition.

    VORRICHTUNG UND VERFAHREN ZUM VERARBEITEN VON REZIPROKEN QUADRATWURZELOPERATIONEN

    公开(公告)号:DE102018132196A1

    公开(公告)日:2019-06-27

    申请号:DE102018132196

    申请日:2018-12-14

    Applicant: INTEL CORP

    Abstract: Eine Vorrichtung und ein Verfahren zum Durchführen einer reziproken Quadratwurzel. Zum Beispiel umfasst eine Ausführungsform eines Prozessors: einen Decodierer, um einen reziproken Quadratwurzelbefehl zu decodieren, um einen decodierten reziproken Quadratwurzelbefehl zu generieren; ein Quellenregister, um mindestens ein gepacktes Eingabedatenelement zu speichern; ein Zielregister, um ein Ergebnisdatenelement zu speichern; und eine Ausführungsverschaltung für reziproke Quadratwurzeln, um den decodierten reziproken Quadratwurzelbefehl auszuführen, wobei die Ausführungsverschaltung für reziproke Quadratwurzeln einen ersten Abschnitt des gepackten Eingabedatenelements als einen Index für eine Datenstruktur zu verwenden hat, die eine Vielzahl von Sätzen von Koeffizienten enthält, um einen ersten Satz von Koeffizienten aus der Vielzahl der Sätze zu identifizieren, wobei die Ausführungsverschaltung für reziproke Quadratwurzeln unter Verwendung einer Kombination der Koeffizienten und eines zweiten Abschnitts des gepackten Eingabedatenelements eine reziproke Quadratwurzel des gepackten Eingabedatenelements zu erzeugen hat.

Patent Agency Ranking