DE102020209180A1 - Matrixschaltung zur Verarbeitung eines Vektors von Spannungen - Google Patents

Matrixschaltung zur Verarbeitung eines Vektors von Spannungen Download PDF

Info

Publication number
DE102020209180A1
DE102020209180A1 DE102020209180.3A DE102020209180A DE102020209180A1 DE 102020209180 A1 DE102020209180 A1 DE 102020209180A1 DE 102020209180 A DE102020209180 A DE 102020209180A DE 102020209180 A1 DE102020209180 A1 DE 102020209180A1
Authority
DE
Germany
Prior art keywords
current
column
memory cells
voltage
matrix circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102020209180.3A
Other languages
English (en)
Inventor
Taha Soliman
Tobias Kirchner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102020209180.3A priority Critical patent/DE102020209180A1/de
Publication of DE102020209180A1 publication Critical patent/DE102020209180A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06GANALOGUE COMPUTERS
    • G06G7/00Devices in which the computing operation is performed by varying electric or magnetic quantities
    • G06G7/12Arrangements for performing computing operations, e.g. operational amplifiers
    • G06G7/16Arrangements for performing computing operations, e.g. operational amplifiers for multiplication or division
    • G06G7/163Arrangements for performing computing operations, e.g. operational amplifiers for multiplication or division using a variable impedance controlled by one of the input signals, variable amplification or transfer function

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

Die Erfindung betrifft eine Matrixschaltung zur Verarbeitung eines Vektors von Spannungen, die eine Anzahl von in Zeilen und Spalten matrixförmig angeordneten Speicherzellen (381,1, ... 38N,M) umfasst. Jede weist Speicherzelle einen Spannungsanschluss (40), einen Stromeingang (42), einen Stromausgang (44) und einen Masseanschluss (46) auf und ist eingerichtet, einen ersten Strom von dem Stromeingang zu dem Masseanschluss zu leiten, wobei die Stärke des ersten Stroms durch eine am Spannungsanschluss anliegende Spannung und einen programmierbaren Zustand der Speicherzelle gesteuert wird, und einen zweiten Strom, der die gleiche Stärke wie der erste Strom aufweist, von dem Stromeingang zu dem Stromausgang zu leiten. Die Matrixschaltung umfasst mehrere Zeilenleitungen (321, 322, ... 32N), mit denen die Spannungsanschlüsse der Speicherzellen verbunden sind; mehrere erste Spaltenleitungen (341, 342, ... 34M), die mit einem Versorgungsanschluss für eine Spannungsversorgung verbunden sind und mit denen die Stromeingänge der Speicherzellen verbunden sind; mehrere zweite Spaltenleitungen (361, 362, ... 36M), die Masseverbindungspunkte aufweisen und mit denen die Stromausgänge der Speicherzellen verbunden sind; und mehrere Strommesseinrichtungen (481, 482, ... 48M), wobei für jede Spalte von Speicherzellen jeweils eine Strommesseinrichtung vorgesehen ist, die dazu eingerichtet ist, einen durch die der Spalte zugehörigen zweiten Spaltenleitung fließenden Strom zu messen.

Description

  • Die vorliegende Erfindung betrifft eine Matrixschaltung zur Verarbeitung eines Vektors von Spannungen.
  • Stand der Technik
  • In vielen rechenintensiven Aufgaben, insbesondere bei Künstliche-Intelligenz-Anwendungen bzw. bei Anwendungen des maschinellen Lernens, ist eine Verarbeitung von Vektoren mittels Matrixoperationen notwendig. Beispielsweise müssen Vektor-Matrix-Multiplikationen durchgeführt werden. Um solche Matrix-Operationen schnell und effizient durchzuführen, können Vektor-Matrix-Multiplizierer in Form eigens dafür vorgesehener elektronischer Schaltungen verwendet werden.
  • In diesen Vektor-Matrix-Multiplizierern, die auch als „Dot-Product-Engines“ bezeichnet werden, wird ein Vektor von Eingangsspannungen mittels einer matrixförmigen Anordnung von Memristoren, die an Kreuzungspunkten von orthogonal zueinander verlaufenden Leitungen angeordnet sind und die die sich kreuzenden Leitungen paarweise verbinden, in einen Vektor von Ausgangsspannungen gewandelt, wobei die Ausgangsspannungen jeweils proportional zum Skalarprodukt („dot product“) des Vektors der Eingangsspannungen mit den Leitfähigkeiten der in einer Spalte angeordneten Memristoren sind. Die Eingangsspannungen werden dabei an die in eine Richtung verlaufenden Zeilenleitungen angelegt und führen zu Strömen über die Memristoren in die dazu orthogonal verlaufenden Spaltenleitungen, deren Potential auf Masse liegt. Die Ströme werden mittels Transimpedanzverstärkern in die Ausgangsspannungen gewandelt. Solche Schaltungen können Größen von jeweils einigen 100 Zeilen und Spalten erreichen.
  • Offenbarung der Erfindung
  • Erfindungsgemäß wird eine Matrixschaltung zur Verarbeitung eines Vektors von Spannungen mit den Merkmalen des unabhängigen Patentanspruchs vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
  • Die Erfindung bedient sich der Maßnahme, dass in einer solchen Matrixschaltung mit zahlreichen Speicherzellen jede Speicherzelle einen Spannungsanschluss, einen Stromeingang und einen Masseanschluss aufweist und dazu eingerichtet ist, einen Strom von dem Stromeingang zum Masseanschluss zu leiten, wobei die Stärke des Stroms durch eine am Spannungsanschluss anliegende Spannung und einen programmierbaren Zustand der Speicherzelle gesteuert wird. Ein Strom gleicher Stärke wird mittels eines Stromspiegels in der Speicherzelle in eine jeweilige zweite Spaltenleitung geleitet. Die Summen der in die zweiten Spaltenleitungen geleiteten Ströme dienen als Messgrößen. In der erfindungsgemäßen Matrixschaltung bedingen die an den Zeilenleitungen angelegten Spannungen keinen Stromfluss von den Zeilenleitungen in die Spaltenleitungen, so dass unvermeidliche Leitungswiderstände der Zeilenleitungen und Spaltenleitungen nicht zu einem Spannungsabfall der angelegten Spannungen entlang der Zeilenleitungen und daraus resultierend unterschiedlichen Spannungen an den Speicherzellen führen. Vektor-Matrix-Operationen können mit dieser Schaltung mit höherer Genauigkeit ausgeführt werden.
  • Die ersten Spaltenleitungen können als Stromzufuhrleitungen angesehen werden und die zweiten Spaltenleitungen können als Messstromleitungen angesehen werden. Der Versorgungsanschluss ist für eine Spannungsversorgung vorgesehen, die als Stromquelle dient.
  • Bevorzugt umfasst jede Speicherzelle einen Stromspiegel, der mit dem Stromeingang und dem Stromausgang verbunden ist und der dazu eingerichtet ist, den vom Stromeingang zum Masseanschluss geleiteten ersten Strom zu spiegeln und den gespiegelten Strom als zweiten Strom am Stromausgang bereitzustellen. Durch Verwendung von Stromspiegeln wird auf einfache und stabile Weise ermöglicht, in die zweite Spaltenleitung zweite Ströme zu leiten, deren Stärke mit den ersten Strömen identisch ist. Der zu messende Summenstrom auf jeder der zweiten Spaltenleitungen ist damit unabhängig von Spannungsabfällen entlang einer Zeilen- oder Spaltenleitung. Als Stromspiegel wird dabei, wie dem Fachmann bekannt ist, eine Schaltung verstanden, die aus einem gegebenen Strom (hier der erste Strom) einen weiteren Strom (hier der zweite Strom) gleicher Stärke ableitet und diesen an einem Ausgang bereitstellt, d.h. ein Stromspiegel erzeugt zu einem gegebenen Strom einen weiteren, gleich starken Strom, er „spiegelt“ bzw. „kopiert“ den gegebenen Strom sozusagen.
  • Bevorzugt umfasst jede Speicherzelle ein Stromsteuerungselement, das mit dem Spannungsanschluss und dem Masseanschluss verbunden ist und das dazu eingerichtet ist, die Stärke des ersten Stroms zu steuern. Das Stromsteuerungselement stellt das Element der Speicherzelle dar, das deren programmierbaren Zustand speichert und den ersten Strom bzw. dessen Stromstärke in Abhängigkeit von der am Spannungsanschluss anliegenden Spannung und dem programmierbaren Zustand steuert. Das Stromsteuerungselement ist weiter bevorzugt mit dem Stromspiegel verbunden, d.h. der Stromspiegel leitet, vom Stromeingang ausgehend, einen Strom als ersten Strom zum Stromsteuerungselement, welches die Stärke dieses ersten Stroms steuert, und spiegelt bzw. kopiert diesen ersten Strom und stellt ihn als zweiten Strom am Stromausgang bereit.
  • Bevorzugt umfasst jede der Speicherzellen ein Halbleiterschaltelement, das den ersten Strom vom Stromeingang zum Masseanschluss bzw. dessen Stromstärke steuert. Das Halbleiterschaltelement ist weiter bevorzugt ein Feldeffekttransistor, FET, mit einstellbarer Schwellenspannung, insbesondere ein Ferroelektrischer Feldeffekttransistor (FeFET), wobei der Gateanschluss des FET mit dem Spannungsanschluss verbunden ist. Der programmierbare Zustand der Speicherzellen entspricht hier der einstellbaren Schwellenspannung. Die Verwendung von FETs ist vorteilhaft, da die Stärke des ersten Stroms nur von der angelegten Spannung und von der eingestellten Schwellenspannung abhängig ist, d.h. unabhängig von Leitungswiderständen der Leitungen. Dieses Halbleiterschaltelement ist vorzugsweise in dem Stromsteuerungselement der Speicherzellen enthalten.
  • Bevorzugt umfasst jede der Speicherzellen, insbesondere im Stromsteuerungselement, einen Memristor. Durch das Vorsehen eines Memristors, gegebenenfalls zusätzlich zu einem Halbleiterschaltelement, kann die Bandbreite der programmierbaren Zustände einer Speicherzelle vergrößert werden. Hier ergeben sich insbesondere zwei Realisierungsmöglichkeiten. Gemäß der ersten Möglichkeit umfasst jede Speicherzelle ein Halbleiterschaltelement (insbesondere einen FET), einen Memristor und einen Widerstand, wobei der Memristor und der Widerstand einen Spannungsteiler an einem Steueranschluss des Halbleiterschaltelements (insbesondere an dem Gateanschluss des FET) bilden. Die am Spannungsanschluss anliegende Spannung liegt dadurch nicht direkt am Gateanschluss an, sondern wird entsprechend dem Teilungsverhältnis, das durch den Spannungsteiler aus Memristor und Widerstand vorgegeben ist, geteilt. Gemäß der zweiten Möglichkeit umfasst jede Speicherzelle ein Halbleiterschaltelement und einen Memristor, wobei der Memristor mit dem Halbleiterschaltelement in Reihe geschaltet ist.
  • Bevorzugt sind die Strommesseinrichtungen eingerichtet, eine zum gemessenen Strom proportionale Ausgangsspannung zu erzeugen, wobei ebenso bevorzugt die Stromesseinrichtungen jeweils einen Transimpedanzverstärker umfassen. Aus einem Vektor von Eingangsspannungen, die an den Zeilenleitungen angelegt werden, kann so ein Vektor von Ausgangsspannungen erzeugt werden, d.h. die Matrixschaltung führt eine Vektor-Matrix-Operation durch, dies kann als „In-Memory-Datenverarbeitung“ angesehen werden.
  • Die Begriffe „Verbindung“, „verbunden“, ... „Anschluss“, „angeschlossen“, ... beziehen sich in dieser Anmeldung jeweils auf elektrisch leitende Verbindungen bzw. elektrisch leitende Anschlüsse, soweit nichts anderes erwähnt ist.
  • Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
  • Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.
  • Figurenliste
    • 1A und 1B zeigen einen nicht-erfindungsgemäßen Vektor-Matrix-Multiplizierer;
    • 2 zeigt die Struktur einer bevorzugten Matrixschaltung gemäß der Erfindung;
    • 3 zeigt eine Spalte von Speicherzellen einer Matrixschaltung gemäß einer bevorzugten Ausführungsform der Erfindung.
  • Ausführungsform(en) der Erfindung
  • Die 1A und 1B stellen einen nicht-erfindungsgemäßen Vektor-Matrix-Multiplizierer, auch als „dot produkt engine“ bezeichnet, dar. Der Vektor-Matrix-Multiplizierer umfasst in Zeilen und Spalten matrixförmig angeordnete Speicherzellen in Form von Memristoren 2. Die Anzahl von Zeilen und die Anzahl von Spalten sind jeweils beliebig, wobei exemplarisch eine 4x4-Anordnung dargestellt ist. Die Speicherfunktion der Memristoren ergibt sich daraus, dass der Widerstand der Memristoren durch Anlegen einer Programmierspannung einstellbar ist.
  • Der Vektor-Matrix-Multiplizierer umfasst weiterhin für jede Zeile der matrixförmigen Anordnung eine Zeilenleitung 4 und für jede Spalte eine Spaltenleitung 6 (wobei der Übersichtlichkeit halber jeweils nur einige Elemente mit Bezugszeichen versehen sind). Die Memristoren 2 sind an den Kreuzungspunkten der zueinander senkrecht verlaufenden Zeilen- und Spaltenleitungen angeordnet und verbinden jeweils eine Zeilenleitung mit einer Spaltenleitung, die anderweitig nicht verbunden sind.
  • Werden an die Zeilenleitungen Spannungen angelegt, so fließen Ströme von den Zeilenleitungen 4 durch die Memristoren 2 in die Spaltenleitungen 6. Dies ist für eine Spalte und zwei Zeilen in 1B illustriert. Dort wird an eine der Zeilenleitungen eine Spannung U1 angelegt und an die andere eine Spannung U2. Der Strom 11 durch einen der Memristoren wird durch dessen Leitfähigkeit G1 bestimmt: 11 = G1 . U1; der Strom 12 durch den anderen Memristor, dessen Leitfähigkeit G2 ist, ist entsprechend 12 = G2 . U2. Durch die Spaltenleitung 6 fließt dann die Summe der Ströme, d.h. der Gesamtstrom I = 11 + 12 = G1 . U1 + G2 . U2. Es findet also eine Multiplikation der als Vektor aufgefassten Spannungen U1, U2 an den Zeilenleitungen 4 mit den als Vektor aufgefassten Leitfähigkeiten G1, G2 der Memristoren in einer Spalte statt, wobei der Gesamtstrom proportional zum Ergebnis dieses Vektorprodukts ist. Bezogen auf die gesamte Matrixanordnung findet also im Prinzip eine Multiplikation des Vektors der Spannungen mit den als Matrixelemente aufgefassten Leitfähigkeiten der Memristoren statt.
  • Der Gesamtstrom jeder Spalte wird üblicherweise mittels eines Transimpedanzverstärkers 8 in eine Ausgangspannung Ua gewandelt. Der hier beispielhaft dargestellte, an sich bekannte Transimpedanzverstärker 8 umfasst einen Operationsverstärker 10, dessen invertierender Eingang mit der Spaltenleitung verbunden ist und dessen nichtinvertierender Eingang auf Masse liegt, und einen Widerstand 12, über den der Operationsverstärker gegengekoppelt ist, so dass die Ausgangsspannung Ua gegeben ist als Ua = - R · I, wobei R der Widerstandswert des Widerstands 12 ist.
  • Die Spannungen an den Zeilenleitungen werden typischerweise aus digitalen Signalen mittels Digital-Analog-Wandlern 14 erzeugt. Ebenso werden typischerweise die Ausgangsspannungen an den Spaltenleitungen mittels Abtast-HalteGliedern 16 (Sample-and-Hold-Schaltungen) und einem Analog-Digital-Wandler 18 wieder in ein digitales Signal umgesetzt.
  • Diese nicht-erfindungsgemäße Schaltung weist mehrere Nachteile auf, so verringern die Leitungswiderstände der Zeilen- bzw. Spaltenleitungen zwischen einzelnen Zellen die Genauigkeit der Vektor-Matrix-Multiplikation, da diese Leitungswiderstände ebenso wie die Memristoren die Stärke der Ströme beeinflussen. Weiter führt ein stärkerer Strom in einer Spaltenleitung zu einem größeren Spannungsabfall entlang der Spaltenleitung, was zu Ungenauigkeiten führt, da die Berechnung darauf beruht, dass das Potential einer Spaltenleitung dem MassePotential entspricht. Dies gilt ebenso für die Zeilenleitungen, je stärker der Strom ist, desto größer ist der Spannungsabfall entlang der Zeilenleitungen, so dass die Eingangsspannungen einzelner Speicherzellen verschoben werden. Diese Nachteile sind umso größer, je größer die Matrix ist.
  • 2 stellt eine beispielhafte erfindungsgemäße Matrixschaltung dar, in der eine matrixförmige bzw. gitterförmige Anordnung durch eine Anzahl N von Zeilen und eine Anzahl M von Spalten gebildet ist. Die Schaltung umfasst N Zeilenleitungen 321, 322, ... 32N, M erste Spaltenleitungen 341, 342, ... 34M, M zweite Spaltenleitungen 361, 362, ... 36M, und M·N Speicherzellen 381,1, 381,2, ... 381,M, 382,1, 382,2, ... 382,M, ... 38N,1, 38N,2, ... 38N,M, wobei jedem Paar von Spaltenleitung und Zeilenleitung eine Speicherzelle zugeordnet ist. Die Speicherzellen sind lediglich symbolisch dargestellt, wobei die Anschlüsse an die Spaltenleitungen und Zeilenleitungen jeweils durch einen Punkt hervorgehoben sind, abgesehen von diesen Anschlusspunkten sind die Speicherzellen nicht mit den Spaltenleitungen und Zeilenleitungen verbunden (vgl. 3 für eine konkrete Ausführung der Speicherzellen). Neben den dargestellten Spaltenleitungen und Zeilenleitungen können zusätzliche, nicht dargestellte Leitungen vorgesehen sein, die insbesondere der Programmierung der Speicherzellen dienen, oder auch dazu dienen können, bestimmte einzelne Speicherzellen oder Gruppen von Speicherzellen gezielt auszuwählen und zuzuschalten oder auszuschalten.
  • Die ersten Spaltenleitungen 341, 342, ... 34M sind mit einem Versorgungsanschluss 51 an eine Versorgungsspannung 50, die eine Stromquelle darstellt, verbunden. Die zweiten Spaltenleitungen 361, 362, ... 36M sind mit Masseverbindungspunkten 491, 492, ... 49M an eine Masse 47 verbunden.
  • Jedes der Speicherzellen 381,1, ... 38N,M weist einen Spannungsanschluss 40, einen Stromeingang 42, einen Stromausgang 44 und einen Masseanschluss 46, der mit der Masse 47 verbunden werden kann, auf; wobei in der Figur der Übersichtlichkeit wegen lediglich eine Speicherzelle 381,1 exemplarisch mit entsprechenden Bezugszeichen versehen ist. Der Spannungsanschluss 40 jeder Speicherzelle 38i,j ist mit der Zeilenleitung 32i, der die Speicherzelle zugeordnet ist, verbunden. Der Stromeingang 42 jeder Speicherzelle 38i,j ist mit der ersten Spaltenleitung 34j, der die Speicherzelle zugeordnet ist, verbunden; und er Stromausgang 44 jeder Speicherzelle 38i,j ist mit der zweiten Spaltenleitung 36j, der die Speicherzelle zugeordnet ist, verbunden.
  • Jede Speicherzelle ist dazu eingerichtet, einen ersten Strom vom Stromeingang 42 zum Masseanschluss 46, d.h. von der ersten Spaltenleitung, der die Speicherzelle zugeordnet ist, zur Masse, zu leiten. Der Stromfluss bzw. die Stärke des ersten Stroms durch eine Speicherzelle wird einerseits durch die am Spannungsanschluss, d.h. an der entsprechenden Zeilenleitung, anliegende Spannung und andererseits durch einen einstellbaren bzw. programmierbaren Zustand der Speicherzelle gesteuert. Weiterhin ist jede Speicherzelle ebenfalls eingerichtet, einen zweiten Strom, der in seiner Stärke dem ersten Strom gleich ist, vom Stromeingang 42 zum Stromausgang 44, d.h. von der ersten Spaltenleitung zur zweiten Spaltenleitung (denen die Speicherzelle zugeordnet ist) zu leiten. Eine beispielhafte Ausführung entsprechender Speicherzellen ist in 3 dargestellt.
  • Weiter umfasst die dargestellte Matrixschaltung Strommesseinrichtungen 481, 482, ... 48M, die zwischen den Speicherzellen und den Masseverbindungspunkten 491, 492, ... 49M der zweiten Spaltenleitungen 361, 362, ... 36M angeordnet sind, um durch die zweiten Spaltenleitungen nach Masse 47 (wenn die Matrixschaltung an eine Spannungsversorgung/Stromquelle und an eine Masse angeschlossen ist) fließende Ströme zu messen, wobei hier für jede zweite Spaltenleitung jeweils eine Strommesseinrichtung vorgesehen ist. Weiterhin ist hier jeder Strommesseinrichtung die gleiche Anzahl von Spaltenleitungen (nämlich jeweils eine) zugeordnet. Die Strommesseinrichtungen 481, 482, ... 48M erzeugen als Messergebnis jeweils eine Spannung Va1, Va2, ... VaM, die zu dem in der zweiten Spaltenleitung, der die Strommesseinrichtung zugeordnet ist, fließenden Strom proportional ist. Die Spannungsversorgung dient als Stromquelle. Eine beispielhafte Realisierung solcher Strommesseinrichtungen ist in 3 gezeigt.
  • Werden an die Zeilenleitungen Eingangsspannungen Ve1, Ve2, ... VeN angelegt, so leiten die Speicherzellen abhängig von der jeweiligen Eingangsspannung und vom programmierten Zustand der jeweiligen Speicherzelle erste Ströme von den ersten Spaltenleitungen nach Masse. Gleichzeitig werden an den Stromausgängen der Speicherzellen zweite Ströme bereitgestellt, die die gleiche Stärke wie die ersten Ströme aufweisen. Diese zweiten Ströme fließen in die zweiten Spaltenleitungen. Die Summe der in einer Spalte durch die Speicherzellen von der Spannungsversorgung in die entsprechende zweite Spaltenleitung fließenden zweiten Ströme wird von der zugehörigen Strommesseinrichtung gemessen und in eine Ausgangsspannung gewandelt. Diese Summe der zweiten Ströme ist gleich der Summe der ersten Ströme, welche wiederum durch die Eingangsspannungen und die programmierten Zustände der Speicherzellen bestimmt sind. Die Spannungen an den Zeilenleitungen stellen einen Eingangsvektor von Eingangsspannungen Ve1, Ve2, ... VeN dar und die Spannungen an den Ausgängen der Strommesseinrichtungen stellen einen Ausgangsvektor von Ausgangsspannungen Va1, Va2, ... VaM dar, so dass die Matrixschaltung sozusagen eine Matrixoperation auf den Eingangsvektor anwendet und diesen auf den Ausgangsvektor abgebildet, wobei diese Abbildung durch die programmierten Zustände der Speicherzellen, die als Matrixelemente bzw. Einträge der Matrix angesehen werden können, bestimmt ist. Für diese Funktion (und auch die Funktionsbeschreibung der Schaltung in 3) muss die Matrixschaltung offensichtlich an den dafür vorgesehenen Anschlüssen und Verbindungspunkten mit einer Spannungsversorgung/Stromquelle und einer Masse verbunden sein.
  • Wie im Zusammenhang mit 1 erläutert, können die Eingangsspannungen an den Zeilenleitungen z.B. durch Digital-Analog-Wandler erzeugt werden. Ebenso können die Ausgangsspannungen durch eine geeignete Schaltung, die einen Analog-Digital-Wandler einschließt, wieder in digitale Signale gewandelt werden. Insgesamt kann die Matrixschaltung so in digitale Schaltungen integriert werden und darin zur Verarbeitung von Vektoren eingesetzt werden.
  • 3 stellt beispielhaft eine Spalte einer Matrixschaltung dar, wobei Speicherzellen sowie Zeilenleitungen und jeweils eine erste und zweite Spaltenleitung, die mit den Speicherzellen verbunden sind, dargestellt sind. Weiter ist in der Figur eine Strommesseinrichtung dargestellt, die mit der zweiten Spaltenleitung verbunden ist, um den von einer Stromquelle bzw. Spannungsversorgung durch die zweite Spaltenleitung nach Masse fließenden Strom zu messen bzw. zu bestimmen. Eine Matrixschaltung umfasst im Allgemeinen eine Anzahl M von solchen Spalten und eine Anzahl N von Zeilen, wie im Zusammenhang mit 2 beschrieben.
  • Die Spalte umfasst entsprechend der Zeilenanzahl N Speicherzellen, von denen einige Speicherzellen 581, 582, 58N stellvertretend dargestellt sind. Entsprechend der Anzahl N von Speicherzellen in der Spalte sind N Zeilenleitungen 521, 522, ... 52N vorgesehen. Jede Speicherzelle weist einen Spannungsanschluss 60, einen Stromeingang 62, einen Stromausgang 64 und einen Masseanschluss 66 auf, die exemplarisch für eine der Speicherzellen 581 mit Bezugszeichen versehen sind. Der Spannungsanschluss 60 ist mit der Zeilenleitung 521, 522, ... 52N verbunden, welcher die jeweilige Speicherzelle 581, 582, ... 58N zugeordnet ist. Der Stromeingang 62 ist mit der ersten Spaltenleitung 54 verbunden, der Stromausgang 64 ist mit der zweiten Spaltenleitung 56 verbunden und der Masseanschluss 66 ist mit einer Masse 68 verbunden.
  • Die erste Spaltenleitung 54 ist weiterhin mit einem Anschluss 70 an eine Versorgungsspannung 72 bzw. Stromquelle verbunden. Die zweite Spaltenleitung 56 ist über eine Strommesseinrichtung 74, die hier beispielhaft als Transimpedanzverstärker realisiert ist, mit Masse 68 verbunden.
  • Die Speicherzellen 581, 582, ... 58N der dargestellten Ausführung umfassen jeweils zwei Bauelemente: ein Stromsteuerungselement 80 und einen damit verbundenen Stromspiegel 82 (nur für eine der Speicherzellen mit Bezugszeichen versehen). Der Stromspiegel 82 ist mit dem Stromeingang 62, dem Stromsteuerungselement 80 und dem Stromausgang 64 verbunden und eingerichtet, ausgehend vom Stromeingang 62 einen ersten Strom zum Stromsteuerungselement 80 und einen zweiten Strom zum Stromausgang 64 zu leiten. Das Stromsteuerungselement 80 ist weiterhin mit dem Spannungsanschluss 60 und dem Masseanschluss 66 verbunden und eingerichtet, den vom Stromspiegel kommenden Strom, d.h. den ersten Strom, zum Masseanschluss 66 zu leiten. Dabei ist das Stromsteuerungselement 80 eingerichtet, die Stärke des ersten Stroms in Abhängigkeit von der am Spannungsanschluss 60 anliegenden Spannung und von einem eingestellten bzw. programmierten Zustand des Stromsteuerungselements zu steuern, d.h. das Stromsteuerungselement stellt das programmierbare Element der Speicherzelle dar, das die programmierten Zustand der Speicherzelle speichert. Der Stromspiegel 82 ist weiterhin eingerichtet, die Stärke des zweiten Stroms so einzustellen, dass der zweite Strom gleich groß wie der erste Strom (dessen Stärke durch das Stromsteuerungselement bestimmt wird), d.h. der Stromspiegel spiegelt bzw. kopiert den ersten Strom, dessen Stärke durch das Stromsteuerungselement bestimmt wird, und stellt diesen als zweiten Strom am Stromausgang 64 bereit.
  • Die Stromsteuerungselemente 80 der dargestellten Ausführung weisen ein Halbleiterschaltelement 84 (insbesondere einen Transistor) zur Steuerung des vom Stromspiegel 82 zum Stromsteuerungselement 80 geleiteten Stromflusses, d.h. des ersten Stroms, zum Masseanschluss 66 auf. Das Halbleiterschaltelement 84 ist hier ein n-Kanal Feldeffekttransistor (FET) vom Anreicherungstyp (selbstsperrend). Der Gateanschluss des FET ist mit dem Spannungsanschluss 60 der Speicherzelle, d.h. mit der Zeilenleitung 521, verbunden. Der Drainanschluss des FET ist mit dem Stromspiegel 82 der Speicherzelle verbunden, so dass der erste Strom zum Drainanschluss geleitet wird. Der Sourceanschluss ist mit dem Masseanschluss 66, d.h. mit Masse 68, verbunden. Wird an die jeweilige Zeilenleitung 521 eine Spannung V1 angelegt, so liegt diese am Gate des FET an und schaltet, bei ausreichend hoher Spannung, die Drain-Source-Strecke des FET in einen leitenden Zustand, d.h. ein Strom, genauer der erste Strom, wird vom Stromspiegel 82 (durch das Stromsteuerungselement) zum Masseanschluss 66 geleitet, wenn die erste Spaltenleitung 54 mit einem Anschluss (Versorgungsanschluss) 70 an eine Spannungsversorgung 72 verbunden ist. Die Stärke des Stroms IDS, der durch die Drain-Source-Strecke fließt, ist von der Gate-Source-Spannung UGS, d.h. von der an der Zeilenleitung anliegenden Spannung, abhängig. Da die an den Zeilenleitungen 521, 522, ... 52N anliegenden Spannungen V1, V2, ... VN zur Ansteuerung des Gates der FETs verwendet werden, fließt kein Strom über die Zeilenleitungen, so dass das Problem eines Spannungsabfalls entlang der Zeilenleitungen nicht auftritt.
  • Das Stromsteuerungselement 80 weist weiterhin eine Speicherfunktion auf, die entsprechend einem damit gespeicherten bzw. programmierten Zustand den Stromfluss zum Masseanschluss beeinflusst, d.h. der Stromfluss wird einerseits von der Spannung an der Zeilenleitung und andererseits vom programmierten Zustand bestimmt. Hierfür kann ein Halbleiterschaltelement mit einer Speicherfunktion verwendet werden. Bevorzugt ist die Verwendung von ferroelektrischen Feldeffekttransistoren (FeFET) vorgesehen. Bei einem FeFET ist am Gate ein ferroelektrisches Material angeordnet, dessen Polarisationspotential zu einer Verschiebung der Schwellenspannung Uth des FET führt. Durch ein Einstellen der Polarisation kann die Schwellenspannung eingestellt werden, d.h. ein Zustand der Speicherzelle kann programmiert werden. Da der Drain-Source-Strom IDS eine Funktion der Differenz UGS - Uth zwischen Gate-Source-Spannung UGS und Schwellenspannung Uth ist, wird der erste Strom durch die Speicherzelle durch die Spannung am Spannungsanschluss (die gleich der Gate-Source-Spannung ist) und den programmierten Zustand (Schwellenspannung bzw. Polarisation) der Speicherzelle gesteuert. Ebenso können Floating-Gate-Transistoren verwendet werden, bei denen die Schwellenspannung durch eine in einem zusätzlich zum Steuer-Gate des Transistors vorgesehen sogenannten Floating-Gate gespeicherte elektrische Ladung verschoben wird. Eine weitere Alternative besteht darin, einen Transistor (mit oder ohne Speicherfunktion) in Kombination mit einem Memristor zu verwenden.
  • Stromspiegel sind dem Fachmann an sich bekannt. In 3 ist exemplarisch eine bekannte einfache Stromspiegel-Schaltung 82 gezeigt, die zwei p-Kanal FETs (genauer Metalloxid-Feldeffekttransistoren, MOSFETs) verwendet. Hierbei sind die Sourceanschlüsse der beiden FETs mit dem Stromeingang verbunden, der Drainanschluss eines ersten der beiden FETs ist mit dem Stromsteuerungselement verbunden und der Drainanschluss des zweiten FET ist mit dem Stromausgang verbunden. Die Gateanschlüsse der beiden FETs sind einerseits miteinander verbunden, so dass die Gate-Source-Spannungen an beiden FETs und damit die beiden Drain-Source-Ströme, d.h. der erste Strom durch den ersten FET und der zweite Strom durch den zweiten FET, gleich sind (vorausgesetzt, die FETs sind vom gleichen Typ bzw. weisen gleiche Eigenschaften auf), und andererseits mit dem Drainanschluss des ersten FET verbunden, so dass die Gate-Spannung durch den Spannungsabfall zur Masse über das Stromsteuerungselement und damit vom ersten Strom abhängt. Abweichend von dieser Schaltung kann jedoch auch eine andere, dem Fachmann bekannte Stromspiegel-Schaltung verwendet werden. Wesentlich ist nur, dass der Stromspiegel den ersten Strom, der durch das Stromsteuerungselement (von diesem gesteuert) nach Masse fließt, als gleich großen zweiten Strom am Stromausgang bereitstellt.
  • Die Stromsteuerungselemente 80 wirken als Senken für die ersten Ströme. Ist die von der Spannungsversorgung bereitgestellte Spannung ausreichend, so spielt der Spannungsabfall entlang der ersten Spaltenleitung keine Rolle, da der in ein Stromsteuerungselement fließende erste Strom lediglich durch die Spannung am Spannungsanschluss (Gate-Spannung) und den gespeicherten Zustand der Speicherzelle bzw. des Stromsteuerungselements (Polarisation des FeFET) bestimmt ist. Entsprechend sind auch die zweiten Ströme von einem Spannungsabfall entlang der ersten Spaltenleitung unabhängig.
  • Der Gesamtstrom in der zweiten Spaltenleitung 56, d.h. die Summe der zweiten Ströme, ist (ähnlich wie bei der Schaltung der 1) zum durch die Matrixschaltung zu berechnenden Ergebnis, das vom Vektor der Zeilenspannungen V1, V2, ... VN und von den programmierten Zuständen der Speicherzellen bestimmt wird, proportional. Dieser Gesamtstrom wird durch eine Strommesseinrichtung 74, die an der zweiten Spaltenleitung 56 zwischen den Speicherzellen und einem Masseverbindungspunkt 71 der zweiten Spaltenleitung 56 an die Masse 68 angeordnet ist, gemessen. Das Messergebnis wird von der Strommesseinrichtung 74 als Ausgangsspannung Va bereitgestellt. Als Strommesseinrichtung kann (wie in 1B) ein Transimpedanzverstärker verwendet werden. D.h. die zweite Spaltenleitung 56 ist mit dem invertierenden Eingang eines Operationsverstärkers 76 verbunden, dessen Ausgang über einen Widerstand 78 mit dem invertierenden Eingang gegengekoppelt ist. Der nicht invertierende Eingang des Operationsverstärkers ist mit dem Masseverbindungspunkt 71 der zweiten Spaltenleitung 56 verbunden. Die Spannung am Ausgang des Operationsverstärkers entspricht dann der Ausgangsspannung Va der Strommesseinrichtung. Im Allgemeinen können jedoch auch andere Strommesseinrichtungen verwendet werden

Claims (8)

  1. Matrixschaltung zur Verarbeitung eines Vektors von Spannungen (Ve1, Ve2, ... VeN), umfassend eine Anzahl von in Zeilen und Spalten matrixförmig angeordneten Speicherzellen (381,1, ... 38N,M); wobei jede Speicherzelle einen Spannungsanschluss (40, 60), einen Stromeingang (42, 62), einen Stromausgang (44, 64) und einen Masseanschluss (46, 66) aufweist, wobei jede Speicherzelle dazu eingerichtet ist, einen ersten Strom von dem Stromeingang zu dem Masseanschluss zu leiten, wobei die Stärke des ersten Stroms durch eine am Spannungsanschluss anliegende Spannung und einen programmierbaren Zustand der Speicherzelle gesteuert wird, und wobei jede Speicherzelle dazu eingerichtet ist, einen zweiten Strom, der die gleiche Stärke wie der erste Strom aufweist, von dem Stromeingang zu dem Stromausgang zu leiten; mehrere Zeilenleitungen (321, 322, ... 32N), wobei für jede Zeile von Speicherzellen eine Zeilenleitung vorgesehen ist, mit der die Spannungsanschlüsse der in der Zeile angeordneten Speicherzellen verbunden sind; mehrere erste Spaltenleitungen (341, 342, ... 34M), die mit einem Versorgungsanschluss (51) für eine Spannungsversorgung verbunden sind, wobei für jede Spalte von Speicherzellen jeweils eine erste Spaltenleitung vorgesehen ist, mit der die Stromeingänge der in der Spalte angeordneten Speicherzellen verbunden sind; mehrere zweite Spaltenleitungen (361, 362, ... 36M), die Masseverbindungspunkte (491, 492, ... 49M) aufweisen, wobei für jede Spalte von Speicherzellen jeweils eine zweite Spaltenleitung vorgesehen ist, mit der die Stromausgänge der in der Spalte angeordneten Speicherzellen verbunden sind; und mehrere Strommesseinrichtungen (481, 482, ... 48M), wobei für jede Spalte von Speicherzellen jeweils eine Strommesseinrichtung vorgesehen ist, die dazu eingerichtet ist, einen durch die der Spalte zugehörigen zweiten Spaltenleitung von den Speicherzellen der Spalte zu dem Masseverbindungspunkt der zweiten Spaltenleitung fließenden Strom zu messen.
  2. Matrixschaltung nach einem der vorstehenden Ansprüche, wobei jede Speicherzelle einen Stromspiegel (82) umfasst, der mit dem Stromeingang und dem Stromausgang verbunden ist und der dazu eingerichtet ist, den vom Stromeingang zum Masseanschluss geleiteten ersten Strom zu spiegeln und den gespiegelten Strom als zweiten Strom am Stromausgang bereitzustellen.
  3. Matrixschaltung nach einem der vorstehenden Ansprüche, wobei jede Speicherzelle ein Stromsteuerungselement (80) umfasst, das mit dem Spannungsanschluss und dem Masseanschluss verbunden ist und das dazu eingerichtet ist, die Stärke des ersten Stroms zu steuern.
  4. Matrixschaltung nach einem der vorstehenden Ansprüche, wobei jede der Speicherzellen ein Halbleiterschaltelement (84) umfasst, das die Stärke des ersten Stroms vom Stromeingang zum Masseanschluss steuert.
  5. Matrixschaltung nach Anspruch 4, wobei das Halbleiterschaltelement (84) ein Feldeffekttransistor, FET, mit einstellbarer Schwellenspannung, insbesondere ein ferroelektrischer Feldeffekttransistor, ist, wobei der Gateanschluss des FET mit dem Spannungsanschluss verbunden ist.
  6. Matrixschaltung nach einem der vorstehenden Ansprüche, wobei jede der Speicherzellen einen Memristor umfasst.
  7. Matrixschaltung nach einem der vorstehenden Ansprüche, wobei die Strommesseinrichtungen eingerichtet sind, eine zur gemessenen Stärke des Stroms proportionale Ausgangsspannung (Va1, Va2, ... VaM) zu erzeugen.
  8. Matrixschaltung nach einem der vorstehenden Ansprüche, wobei die Stromesseinrichtungen jeweils einen Transimpedanzverstärker umfassen.
DE102020209180.3A 2020-07-22 2020-07-22 Matrixschaltung zur Verarbeitung eines Vektors von Spannungen Pending DE102020209180A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020209180.3A DE102020209180A1 (de) 2020-07-22 2020-07-22 Matrixschaltung zur Verarbeitung eines Vektors von Spannungen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020209180.3A DE102020209180A1 (de) 2020-07-22 2020-07-22 Matrixschaltung zur Verarbeitung eines Vektors von Spannungen

Publications (1)

Publication Number Publication Date
DE102020209180A1 true DE102020209180A1 (de) 2022-01-27

Family

ID=79179182

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020209180.3A Pending DE102020209180A1 (de) 2020-07-22 2020-07-22 Matrixschaltung zur Verarbeitung eines Vektors von Spannungen

Country Status (1)

Country Link
DE (1) DE102020209180A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022203685A1 (de) 2022-04-12 2023-10-12 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung mit einer Vergleichereinrichtung und Verfahren zum Betreiben einer Vorrichtung mit einer Vergleichereinrichtung

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180075337A1 (en) 2016-09-14 2018-03-15 Hewlett Packard Enterprise Development Lp Neuron circuits
WO2019212488A1 (en) 2018-04-30 2019-11-07 Hewlett Packard Enterprise Development Lp Acceleration of model/weight programming in memristor crossbar arrays

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180075337A1 (en) 2016-09-14 2018-03-15 Hewlett Packard Enterprise Development Lp Neuron circuits
WO2019212488A1 (en) 2018-04-30 2019-11-07 Hewlett Packard Enterprise Development Lp Acceleration of model/weight programming in memristor crossbar arrays

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022203685A1 (de) 2022-04-12 2023-10-12 Robert Bosch Gesellschaft mit beschränkter Haftung Vorrichtung mit einer Vergleichereinrichtung und Verfahren zum Betreiben einer Vorrichtung mit einer Vergleichereinrichtung

Similar Documents

Publication Publication Date Title
DE102014107017B4 (de) Schaltungsanordnung
DE102015101837B4 (de) Vorrichtung und Verfahren zur Verbesserung der Gleichtaktunterdrückung
DE2458848C2 (de) Speicheranordnung
EP0236525A1 (de) Integrierte Isolierschicht-Feldeffekttransistor-Verzögerungsleitung für Digitalsignale
DE2641860A1 (de) Integrierte stromversorgungsschaltung
DE2620187C3 (de) Monostabile Multivibratorschaltung
DE102020130963B4 (de) Leseverstärker und betriebsverfahren für nichtflüchtigen speicher
DE1462952B2 (de) Schaltungsanordnung zur realisierung logischer funktionen
DE2625007B2 (de) Adressenpufferschaltung für Halbleiterspeicher
DE102015107549A1 (de) Regelung eines laststrom-zu-messstrom-verhältnisses in einem strommessenden metall-oxidh-albleiter-feldeffekt-transistor (mosfet)
DE69206335T2 (de) Unter niedriger Spannung betriebener Stromspiegel.
DE112015004384T5 (de) Matrixvorrichtung, Verfahren zum Messen ihrer Eigenschaften und Betriebsverfahren derselben
WO2001061430A1 (de) Spannungs-strom-wandler
DE69820186T2 (de) Gegen heisse Elektronen geschützte Schaltung und Methode
DE102020209180A1 (de) Matrixschaltung zur Verarbeitung eines Vektors von Spannungen
DE69600991T2 (de) Strommessschaltung
WO2022043077A1 (de) Stromzählschaltung für eine matrixoperationsschaltung, summationsschaltung und verfahren zu deren betreib
DE2631916C3 (de) Auf einem Halbleiterchip aufgebauer Differenzverstärker aus MOS-Feldeffekttransistoren
DE102015110102A1 (de) Strommessung in einer Leistungshalbleiter-Anordnung
DE19533768C1 (de) Stromtreiberschaltung mit Querstromregelung
DE19838657A1 (de) Schaltungsanordnung zum Erfassen des Laststromes eines durch Feldeffekt steuerbaren Leistungs-Halbleiterbauelementes
DE68910869T2 (de) Stromteilerschaltung.
DE69122175T2 (de) Digital-Analogwandler
DE2615848C2 (de) Halbleiter-Schaltungsanordnung für eine Konstantstromquelle
DE102020209183A1 (de) Matrixschaltung zur Verarbeitung eines Vektors von Spannungen

Legal Events

Date Code Title Description
R163 Identified publications notified