-
公开(公告)号:DE102018006737A1
公开(公告)日:2019-04-11
申请号:DE102018006737
申请日:2018-08-24
Applicant: INTEL CORP
Inventor: VALENTINE ROBERT , CHARNEY MARK J , CORBAL JESUS , MADDURI VENKATESWARA , OULD-AHMED-VALL ELMOUSTAPHA , YANG BINWEI
IPC: G06F9/38
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.
-
公开(公告)号:DE102018006807A1
公开(公告)日:2019-04-04
申请号:DE102018006807
申请日:2018-08-28
Applicant: INTEL CORP
Inventor: MADDURI VENKATESWARA , OULD-AHMED-VALL ELMOUSTAPHA , CHARNEY MARK J , VALENTINE ROBERT , CORBAL JESUS , YANG BINWEI
IPC: G06F9/302
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.
-
63.
公开(公告)号:DE102018006800A1
公开(公告)日:2019-04-04
申请号:DE102018006800
申请日:2018-08-28
Applicant: INTEL CORP
Inventor: MADDURI VENKATESWARA , OULD-AHMED-VALL ELMOUSTAPHA , CORBAL JESUS , CHARNEY MARK J , VALENTINE ROBERT , YANG BINWEI
IPC: G06F9/38
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.
-
公开(公告)号:DE102018006743A1
公开(公告)日:2019-04-04
申请号:DE102018006743
申请日:2018-08-24
Applicant: INTEL CORP
Inventor: VALENTINE ROBERT , CHARNEY MARK J , CORBAL JESUS , MADDURI VENKATESWARA , OULD-AHMED-VALL ELMOUSTAPHA , YANG BINWEI
IPC: G06F9/38
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.
-
公开(公告)号:DE102018006013A1
公开(公告)日:2019-04-04
申请号:DE102018006013
申请日:2018-07-30
Applicant: INTEL CORP
Inventor: MADDURI VENKATESWARA , OULD-AHMED-VALL ELMOUSTAPHA , VALENTINE ROBERT , CORBAL JESUS , CHARNEY MARK J
IPC: G06F9/38
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.
-
公开(公告)号:DE112017003351T5
公开(公告)日:2019-03-14
申请号:DE112017003351
申请日:2017-06-14
Applicant: INTEL CORP
Inventor: BROWN WILLIAM M , OULD-AHMED-VALL ELMOUSTAPHA
IPC: G06F9/30
Abstract: Es werden Systeme, Verfahren und Vorrichtungen zum Ausführen einer Anweisung beschrieben. In einigen Ausführungsformen weist die Anweisung mindestens einen Opcode, ein Feld für einen gepackten Datenquelloperanden und ein Feld für einen gepackten Datenzieloperanden auf. Wenn sie ausgeführt wird, veranlasst die Anweisung für jede Datenelementposition des Quelloperanden, dass ein Wert, der in der Datenelementposition gespeichert ist, mit allen Werten, die in vorhergehenden Datenelementpositionen des gepackten Datenquelloperanden gespeichert sind, multipliziert wird und ein Ergebnis der Multiplikation in einer entsprechenden Datenelementposition des gepackten Datenzieloperanden gespeichert wird.
-
公开(公告)号:DE112017003343T5
公开(公告)日:2019-03-14
申请号:DE112017003343
申请日:2017-06-14
Applicant: INTEL CORP
Inventor: BROWN WILLIAM M , OULD-AHMED-VALL ELMOUSTAPHA
IPC: G06F9/30
Abstract: Es sind Systeme, Verfahren und Vorrichtungen zum Ausführen einer Anweisung beschrieben. Zum Beispiel enthält eine Anweisung zumindest einen Opcode, ein Feld für einen Gepackte-Daten-Quellenoperanden und ein Feld für einen Gepackte-Daten-Zielortoperanden. Wenn ausgeführt, veranlasst die Anweisung für jede Datenelementposition des Quellenoperanden, zu einem Wert, der in dieser Datenelementposition gespeichert ist, alle Werte zu addieren, die in vorangehenden Datenelementpositionen des Gepackte-Daten-Quellenoperanden gespeichert sind, und ein Ergebnis der Addition in einer entsprechenden Datenelementposition des Gepackte-Daten-Zielortoperanden zu speichern.
-
公开(公告)号:DE102018001536A1
公开(公告)日:2018-08-30
申请号:DE102018001536
申请日:2018-02-27
Applicant: INTEL CORP
Inventor: PLOTNIKOV MIKHAIL , OULD-AHMED-VALL ELMOUSTAPHA
IPC: G06F9/38
Abstract: Ein durch einen Prozessor durchgeführtes Verfahren umfasst Empfangen eines Befehls. Der Befehl zeigt einen Quelloperanden an, zeigt eine Strukturbreite an, zeigt zumindest einen Satz von gleichmäßig beabstandeten Datenelementpositionen aus allen Sätzen von gleichmäßig beabstandeten Datenelementpositionen für die angezeigte Strukturbreite an und zeigt zumindest ein Zielregister mit gepackten Daten des Prozessors an. Das Verfahren umfasst auch Speichern, in Reaktion auf den Befehl, für jeden der angezeigten einen oder mehreren Sätze von gleichmäßig beabstandeten Datenelementpositionen, eines zugehörigen Ergebnisoperanden mit gepackten Daten, in einem zugehörigen Zielregister mit gepackten Daten des Prozessors. Jeder Ergebnisoperand mit gepackten Daten, mehrere Datenelemente umfassend, die von dem zugehörigen angezeigten Satz von gleichmäßig beabstandeten Datenelementpositionen des Quelloperanden stammen. Die gleichmäßig beabstandeten Datenelementpositionen des Satzes sind voneinander durch ganzzahlige Vielfache der angezeigten Strukturbreite getrennt. Andere Verfahren, Prozessoren, Systeme und maschinenlesbare Medien sind ebenfalls offenbart.
-
69.
公开(公告)号:BR112013025409A2
公开(公告)日:2016-12-20
申请号:BR112013025409
申请日:2011-12-12
Applicant: INTEL CORP
Inventor: FORSYTH ANDREW THOMAS , TOLL BRET L , BRADFORD DENNIS R , OULD-AHMED-VALL ELMOUSTAPHA , WIEDERMEIER JEFFREY G , ADRIAN JESUS CORBAL SAN , WU LISA K , GIRKAR MILIND BABURAO , VALENTINE ROBERT C , SAMUDRALA SRIDHAR
Abstract: sistemas, aparelhos e métodos para mistura de dois operandos de fonte em destinação única usando writemask a presente invenção refere-se a concretizações de sistemas, aparelhos, e métodos para realização de uma instrução agrupada em um processador de computação. em algumas concretizações, a execução de uma instrução agrupada causa uma seleção de dados elementos por elemento dos elementos de dados dos primeiros e segundo operandos de fonte usando as posições de btye correspondentes de um writemask como um seletor entre os primeiros e segundio operandos, e armazenagem dos elementos de dados selecionados na destinação na posição correspondente na destinação.
-
公开(公告)号:DE112013005188T5
公开(公告)日:2015-07-16
申请号:DE112013005188
申请日:2013-06-29
Applicant: INTEL CORP
Inventor: PLOTNIKOV MIKHAIL , NARAIKIN ANDREY , OULD-AHMED-VALL ELMOUSTAPHA
IPC: G06F9/45
Abstract: In einer Ausführungsform beinhaltet ein Verfahren zum Vektorisieren einer zusammengeführten, mehrfach geschachtelten Schleife Ausführen der zusammengeführten Schleife in einer Vektoreinheit eines Prozessors, um einen Vektor von Offsets zu erhalten, was für jede von einer Vielzahl von Iterationen Kalkulieren eines skalaren Offsets in eine mehrdimensionale Datenstruktur, Speichern des skalaren Offsets in einem Datenelement eines ersten Vektorregisters und Aktualisieren eines Schleifenzählerwerts eines Vektors eines Zählers für mehrdimensionale Schleifen beinhaltet. Anschließend wird eine Vielzahl von Datenelementen aus der mehrdimensionalen Datenstruktur unter Verwendung eines Basiswerts und von Indizes aus dem Vektor von Offsets geladen, mindestens eine Berechnung an der geladenen Vielzahl von Datenelementen durchgeführt, um eine Vielzahl von Ergebnissen zu erhalten, und die Vielzahl von Ergebnissen in die mehrdimensionale Datenstruktur unter Verwendung des Basiswerts und der Indizes aus dem Vektor von Offsets gespeichert. Andere Ausführungsformen werden beschrieben und beansprucht.
-
-
-
-
-
-
-
-
-