Direkte Ausführung von Matrixoperationen im Speicher Memristor-basiertes Speichersystem für datenintensive Aufgaben
Forscher haben eine auf Memristoren basierende Memory-Processing-Unit (MPU) entwickelt. Diese kann vollständige Matrix- und Vektoroperationen direkt im Speicher ausführen und beschleunigt damit Berechnungen.
Anbieter zum Thema

Ob künstliche Intelligenz, Maschinelles Lernen oder Wettervorhersage: Für viele Berechnungen in Wissenschaft und Technik ist die hochgenaue Lösung partieller Differentialgleichungen notwendig. Da diese selten analytische Lösungen besitzen, sondern im Allgemeinen numerisch gelöst werden, ist eine hohe Rechenleistung erforderlich. Meist wird dabei iterativ mit großen Matrizen und Vektoren gearbeitet, deren Elemente für arithmetische Operationen vom Datenspeicher in die CPU übertragen werden müssen. Dieser Transfer stellt einen gewissen Flaschenhals dar und verlangsamt die Ausführung.
Forscher der Universität von Michigan wollen das Problem durch die Verwendung von Memristoren lösen. Eine neue Anordnung auf dem Chip soll es ermöglichen, diese Speicherelemente auch für Matrix- und Vektoroperationen zu benutzen, ohne dass Datenworte geladen werden müssen. Dies würde die Leistungsfähigkeit in Low-Power-Umgebungen wie Smartphones erhöhen oder zu effizienteren Supercomputern führen. Nach Aussage der Wissenschaftler kann sich dabei die Leistungsaufnahme um den Faktor 100 verbessern.
Einsatz in künstlichen neuronalen Netzen
Memristoren, auch Resistive Random-Access-Memories (RRAMs) genannt, speichern Informationen als kontinuierliche Widerstandswerte. Im Gegensatz zu gewöhnlichen digitalen Bits, die nur die Werte 0 oder 1 annehmen, lassen Memristoren jedoch beliebige Werte zu. Einige Anwendungen, wie beispielsweise künstliche neuronale Netzwerke, nutzen diese analoge Natur der Bauelemente bereits.
Ein Nachteil der Memristoren ist ihre aufgrund der kleinen Stromdifferenzen systemeigene geringe Präzision und ihre hohe Variabilität. Künstliche neuronale Netzwerke können das ohne Leistungseinbußen tolerieren. Für wissenschaftliche und technische Anwendungen ist das jedoch nicht akzeptabel.
Gute Konzeption ist die Basis
Wei Lu, Professor für Elektro- und Computertechnik an der University of Michigan, und seine Kollegen umgehen dieses Problem, indem sie die Stromausgänge digitalisieren und Strombereiche für spezifische Bitwerte definieren. Demnach kann ein gut konzipierter Memristor annähernd 64 verschiedene Widerstandswerte annehmen, was ungefähr 6-Bit entspricht.
Das Schreiben eines Widerstandswertes in einen Memristor erfolgt mit einer Schreib-/Löschspannung oberhalb einer Schwellspannung, das Lesen mit einer Lesespannung unterhalb. Zudem funktioniert ein Memristor als zweipoliger Schalter, der einen durch ihn fließenden Strom auf Basis der Widerstandswerte direkt moduliert. Damit sind diese Bauelemente in der Lage, eine analoge Multiplikation unmittelbar im Speicher auszuführen, wobei der dabei fließende Strom gleich der angelegten Spannung multipliziert mit dem gespeicherten Widerstandswert ist.
Beseitigung des Engpasses Datenübertragung
Multiply-Accumulate-(MAC-)Operationen werden durch eine Anordnung der Memristoren in einer Crossbar-Struktur ermöglicht. Dabei ist der Ausgangsstrom einer Spalte das Skalar-Produkt zwischen dem Eingangsspannungsvektor und dem der Spalte zugeordneten Leitwertvektor. Eine Vektor-Matrix-Multiplikation wird hierbei mit einer einzigen Leseoperation ausgeführt. Die Operation folgt dabei dem Ohmschen und dem 1. Kirchhoffschen Gesetz.
Durch die Ausführung der arithmetischen Berechnungen direkt im Speicher soll der Engpass der Datenübertragung zur CPU beseitigt und damit die Gesamtberechnung beschleunigt werden. Die von anwendungsnahen numerischen Berechnungen geforderte Genauigkeit von 64-Bit kann durch eine entsprechende Anordnung mehrerer Crossbars erreicht werden.
Erfolgreicher Hardware-Test
Als Test für den Einsatz von Prozessoren mit dieser neuen Architektur, welche die Forscher als Memory Processing Unit (MPU) bezeichnen, entschied sich die Gruppe um Professor Lu dafür, partielle Differentialgleichungen mittels eines 32 x 32 großen Tantaloxid-Memristor-Arrays zu lösen.
Das Array besitzt einen 10-Bit Ausgang pro Spalte und liefert bei voller Auslastung 1024 MACs pro Zyklus. Die Gleichungen simulierten dabei erfolgreich einen Argon-Plasma-Reaktor, wie er beispielsweise für die Herstellung integrierter Schaltkreise verwendet wird. Die Ergebnisse zeigen nach Ansicht der Wissenschaftler, dass das vorgeschlagene Memristor-basierte Rechnersystem für datenintensive Rechenaufgaben heute und in Zukunft gut positioniert ist.
Ihre Forschungsergebnisse fassten die Forscher in der Veröffentlichung „A general memristor-based partial differential equation solver“ zusammen, der im Juli 2018 in der Zeitschrift Nature Electronics veröffentlicht wurde.
* Diesen Beitrag haben wir von unserem Partnerportal Elektronik-Praxis übernommen.
(ID:45476573)