DE4016197A1 - Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermustern - Google Patents

Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermustern

Info

Publication number
DE4016197A1
DE4016197A1 DE4016197A DE4016197A DE4016197A1 DE 4016197 A1 DE4016197 A1 DE 4016197A1 DE 4016197 A DE4016197 A DE 4016197A DE 4016197 A DE4016197 A DE 4016197A DE 4016197 A1 DE4016197 A1 DE 4016197A1
Authority
DE
Germany
Prior art keywords
current
lines
global
network according
local
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.)
Withdrawn
Application number
DE4016197A
Other languages
English (en)
Inventor
Chin S Park
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE4016197A1 publication Critical patent/DE4016197A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • G11C15/046Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements using non-volatile storage elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • G06N3/065Analogue means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/192Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
    • G06V30/194References adjustable by an adaptive method, e.g. learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Description

Die Erfindung bezieht sich auf das Gebiet der Neuralnetzwerke, und zwar insbesondere derjenigen Netzwerke, die zur Durchfüh­ rung von Musteranpassungen bzw. -abstimmungen und Hamming-Di­ stanzberechnungen zweckmäßig sind.
In den letzten Jahren haben Elektronikforscher auf dem Gebiete von analogen Neuralnetzwerken und Assoziativspeichern ver­ sucht, die vom menschlichen Gehirn durchgeführte Logik zu duplizieren. Schaltungsmodelle wurden vorgeschlagen, die so­ wohl ein Lernen (z. B. einen Programmiermodus) als auch eine Entscheidungspraxis (z. B. Erkennen, Assoziativspeicher usw.) ermöglichen.
Eine Kategorie von Aufgaben, für die Neuralnetzwerke besonders geeignet sind, sind Erkennungsaufgaben. D. h., Neuralnetzwerke können zum Analysieren von Daten und Identifizieren der vor­ handenen Merkmale benutzt werden. Dies umfaßt das Anpassen von Schablonen und erwarteten Merkmalen an Daten und das Auffinden der besten Übereinstimmung. Bei Muster-Anpaßproblemen werden die gleichen gespeicherten Muster wiederholt mit verschiedenen Eingangsmustern unter Verwendung der gleichen Berechnung ver­ glichen. Verschiedene Grade der relativen Übereinstimmung zwischen den Mustern können dann berechnet werden.
Ein Maß für den Unterschied zwischen zwei Binärmustern wird als die "Hamming-Distanz" bezeichnet. (Ein Binärmuster oder ein Binärvektor ist in dieser Anmeldung als String von Einsen und Nullen, d. h. Bits, definiert, in dem die Folge von Bits eine Bedeutung hat.) Mathematisch ist die Hamming-Distanz zwischen zwei Mustern die Anzahl von Bits, die in den beiden Mustern in entsprechenden Bitpositionen unterschiedlich sind. Selbstverständlich müssen beide Muster die gleiche Bitzahl für die Hamming-Distanz haben, um eine reelle Bedeutung zu haben, da hierdurch eine Eins-zu-Eins-Korrespondenz zwischen Bitposi­ tionen gebildet wird. Eine bei der Durchführung der Musterab­ stimmung in einem Neuralnetzwerk brauchbare Halbleiterzelle ist in der US-Patentanmeldung 3 25 380 vom 17. März 1989 der Anmelderin beschrieben.
Eine Implementierung großer Neuralnetzwerke in VLSI-Architek­ tur wirft einige technische Probleme auf, die bei kleineren Schaltungskonfigurationen nicht entstehen. So ist beispiels­ weise bei einem gewöhnlichen Speicherprodukt nur ein Teil des Feldes (entsprechend einer speziellen Adresse, d. h. eine Zelle pro Ausgangsbit) während eines Lesezyklus′ aktiv. Mit anderen Worten, das Ausgangssignal ist seiner Natur nach vollständig digital und hängt nicht von der Summe der Ausgangsströme in­ nerhalb des Feldes ab. Umgekehrt können in einem Neuralnetz­ werk alle Zellen im gesamten Feld gleichzeitig aktiv sein, wodurch sich ein hoher Ausgangsgesamtstrom ergibt.
Wie in der oben bezeichneten älteren Anmeldung beschrieben worden ist, kann jede Neuralnetzwerk-Abstimmzelle (matching cell) (z. B. Exklusiv-ODER-Zelle) einen Strom erzeugen, der in typisch analoger Weise entlang einer oder mehrerer Spaltenlei­ tungen summiert wird. Diese Spaltenleitungen müssen in der Lage sein, sehr kleine Ströme (wenn keine der Zellen zum Strom beiträgt) und ebenso sehr große Ströme zu beherrschen (in Situationen, in denen viele oder gar alle Zellen ihren Strom­ beitrag leisten).
Sehr große Spaltenströme können zu Elektrowanderung des Me­ talls führen, das zur Herstellung der Spaltenleitungen inner­ halb der Matrix bzw. des Feldes verwendet wurde. Elektrowande­ rung ist ein Hauptgrund für Zuverlässigkeitsmängel. Wenn man versuchen wollte, den Lesestrom entlang den Stromsummierlei­ tungen zu senken, so kann Signalinterferenz (d. h. Rauschen) die Genauigkeit der Berechnung verschlechtern. Die Stärke des Stroms, die jede aktive Zelle zum gesamten Spaltenstrom bei­ trägt, hängt natürlich vom Programmier- (d. h. Lern-) Zustand sowie vom angelegten Eingangsvektor ab.
Da ein relativ hoher Strom auf jeder Summierleitung bei einer großen Matrix bzw. einem großen Speicherfeld fließen kann, stellen ein ohmscher Spannungsabfall und Elektrowanderung ein ernsthaftes Problem bei sehr großen Neuralnetzwerkfeldern dar. (Der erstgenannte erzeugt Signalinterferenz, die die Genauig­ keit der Berechnung verschlechtert, während letztere zu Zuver­ lässigkeitsproblemen Anlaß gibt.)
Wie zu sehen sein wird, löst die Erfindung diese Probleme durch Verwendung einer neuartigen Neuralnetzwerkarchitektur. Erfindungsgemäß wird ein Neuralnetzwerk in eine Anzahl kleine­ rer Blöcke unterteilt. Jeder Block enthält ein Feld von Mu­ ster-Abstimmzellen, wie diejenige, die in der oben genannten älteren Anmeldung beschrieben wurde. Die Zellen sind in Spal­ ten entlamg einer oder mehrerer lokaler Stromsummierleitungen angeordnet. Diese Leitungen bilden ein Mittel zum Aufaddieren der Strombeiträge aus jeder Zelle zur Erzeugung eines Maßes der relativen Übereinstimmung bzw. Abstimmung zwischen einem an den Block angelegten binären Eingangssignalmuster und einem binären Wichtungsmuster, das in den Zellen des Feldes oder der Matrix gespeichert ist.
Zusätzlich ist jede Spaltenleitung innerhalb eines Block mit einer globalen Summierleitung über ein spezielles Kopplungs­ netzwerk gekoppelt. Die globalen Summierleitungen addieren die zugehörigen lokalen Spaltenströme zur Erzeugung eines Maßes der Hamming-Distanz für mehrere Blöcke. Der Typ der in dieser Anmeldung beschriebenen Architektur wird als Niveau-Summier­ schema mit in Blöcken unterteiltem Speicherfeld bzw. Matrix- (LSBA) bezeichnet und stellt eine elegante Lösung für das Problem der Implementierung großer Neuralnetzwerke dar.
Als weiterer relevanter Stand der Technik werden genannt: US-PS 47 60 437; 46 60 166; 47 82 460; 47 73 024 und 48 02 103; ferner "A Pipelined Associative Memory Implemented in VLSI" von Clark u. a. in IEEE Journal of Solid State Circuits, Bd. 24, Nr. 1, Seiten 28-34, Februar 1989.
Erfindungsgemäß ist ein Assoziativnetzwerk mit einer Vielzahl von Schaltungsblöcken vorgesehen, von denen jeder selbst meh­ rere Halbleiterzellen in Matrixanordnung zur Berechnung der relativen Übereinstimmung zwischen einem angelegten Eingangs­ muster und einem gespeicherten Wichtungsmuster enthält.
Im Betrieb der neuen Netzwerkarchitektur können die Halblei­ terzellen einen Strombeitrag zu mehreren lokalen Summierlei­ tungen leisten, die innerhalb jedes der Blöcke angeordnet sind. Diese lokalen Summierleitungen dienen zum Summieren der individuellen Strombeiträge aus den Zellen. Der die Summe der einzelnen lokalen Spaltenströme innerhalb eines Blocks dar­ stellende Gesamtstrom entspricht direkt dem Grad der Überein­ stimmung zwischen den beiden Mustern.
Zusätzlich sind alle Blöcke innerhalb des Netzwerks entlang einer zugehörigen Anzahl von globalen Summierleitungen zusam­ mengeschlossen. Die globalen Summierleitungen sind über ein Kopplungselement mit einer zugehörigen lokalen Summierleitung gekoppelt. Das Kopplungselement macht es möglich, daß die Ströme aus allen einigen Blöcken zugeordneten lokalen Spalten­ leitungen entlang einer individuellen globalen Summierleitung summiert werden. Der gewonnene kollektive globale Strom ent­ spricht der Gesamtübereinstimmung zwischen allen Eingangsmu­ stern und allen gespeicherten Wichtungen für das Gesamtnetz­ werk.
Bei einem bevorzugten Ausführungsbeispiel sind alle Kopplungs­ elemente so steuerbar, daß jedem Block innerhalb des Netzwerks eine Wichtung zugeordnet werden kann. Mit anderen Worten, die Verbindungsstärke zwischen den lokalen und globalen Summier­ leitungen kann dynamisch auf Block-für-Block-Basis geändert werden, wodurch eine genaue Steuerung über die Stärke der globalen Ströme sowie des Berechnungsprozesses generell gewon­ nen werden kann.
Im folgenden wird die Erfindung anhand von in der Zeichnung schematisch dargestellten Ausführungsbeispielen näher erläu­ tert. In der Zeichnung zeigt
Fig. 1A einen ersten Teil eines Ausführungsbeispiels der Erfindung;
Fig. 1B einen zweiten Teil des Ausführungsbeispiels der Erfindung;
Fig. 2 einen Teilabschnitt des Netzwerks der Fig. 1A und 1B mit einem Kopplungsnetzwerk, das zum Koppeln individueller lokaler Summierleitungen mit den ihnen zugeordneten globalen Summier­ leitungen dient;
Fig. 3 ein alternatives Ausführungsbeispiel des Kopp­ lungsnetzwerks der Fig. 1 und 2;
Fig. 4 ein anderes alternatives Ausführungsbeispiel des in den Fig. 1 bis 3 gezeigten Kopp­ lungsnetzwerks; und
Fig. 5 ein wiederum alternatives Ausführungsbeispiel des Kopplungsnetzwerks.
Beschrieben wird ein Neuralnetzwerk unter Verwendung eines Niveau-Summierschemas (leveled summing scheme) mit einer Blockmatrix (LSBA)-Architektur. In der folgenden Beschreibung werden zahlreiche spezielle Einzelheiten angegeben, beispiels­ weise spezielle Zellenstrukturen, Schaltungskonfigurationen usw., um das Verständnis für die vorliegende Erfindung zu erleichtern. Es ist jedoch für den Fachmann klar, daß die Erfindung auch ohne diese speziellen Einzelheiten realisiert werden kann. In anderen Fällen sind bekannte Schaltungen nicht im Detail angegeben, um die Erfindung nicht mit unnötigen Einzelheiten zu belasten.
In den Fig. 1A und 1B ist die LSBA-Architektur nach der Erfindung gezeigt. Das Neuralnetzwerk 18 weist eine zweidimen­ sionale Matrix von Matrix- bzw. Feldblöcken, z. B. Block 15, auf. Jedem Block sind mehrere Eingangsleitungen zur Ankopplung von Eingangsspannungsvektoren in eine Matrix von Muster-Ab­ stimmungshalbleiterzellen (pattern matching cells), wie die Exklusiv-ODER-Zelle 14 zugeordnet. Die einzelnen Zellen inner­ halb eines vorgegebenen Blocks sind für die Berechnung der relativen Übereinstimmung zwischen einem Bit eines Eingangs­ vektormusters und einem Bit eines gespeicherten Wichtungsmu­ sters verantwortlich.
Die Zelle 14 weist vorzugsweise zwei Bauelemente mit schweben­ der Gate-Elektrode auf, deren Drain-Elektroden mit einer loka­ len Summierleitung (z. B. L 20 in Fig. 1B) gekoppelt und deren Source-Elektroden geerdet sind. Der Betrieb und die Program­ mierung der Zelle 14 sind in der früheren Anmeldung der Anmel­ derin beschrieben. In Abhängigkeit von den Eingangsspannungen auf den Leitungen i 0,0 und und dem inneren Zustand des Bauelements (z. B. programmiert oder gelöscht) kann die Zelle 14 zum Strom I L beitragen, der entlang der lokalen Summierleitung 39 in Block 15 fließt. Der Strom I L , der in jeder lokalen Summierleitung fließt, hängt von der Summe der Einzelstrombeiträge aus den dieser Leitung zugeordneten Exklu­ siv-ODER-Zellen ab.
Ferner sind im Block 15 mehrere Kopplungsnetzwerke, beispiels­ weise das Netzwerk 12, enthalten, welche individuelle lokale Summierleitungen (z. B. L 20) mit ihren zugehörigen globalen Summierleitungen (z. B. G 2) innerhalb des Netzwerks 18 kop­ peln. Kopplungsnetzwerk 12 weist auch Leitungen 26, 27, 28, bezeichnet mit "GEKOPPELT", "V REF 2" und "DIREKT" auf. Diese Leitungen steuern individuelle Blöcke nach Maßgabe ihres rela­ tiven Beitrags zu dem im Netzwerk 18 fließenden globalen Strom (z. B. I G ). Dieser Aspekt der Erfindung wird weiter unten noch genauer erörtert werden.
Der Strom I G stellt die Summe der lokalen Spaltenströme dar, die einer globalen Summierleitung über einige Blöcke im Netz­ werk 18 zugeordnet sind. In Fig. 1A und 1B summiert bei­ spielsweise die Leitung 32 (d. h. G 2) die in den Leitungen L 20, L 21, ... L 2N fließenden Ströme.
Jeder lokalen Summierleitung innerhalb des Feldes oder der Matrix 18 ist ein separates Kopplungsnetzwerk 12 zugeordnet. Der gesamte Strom aller globalen Summierleitungen G 0-G K entspricht der Hamming-Distanz zwischen einem Eingangsvektor i j,k und einem gespeicherten Wichtungsmuster (das gespei­ cherte Wichtungsmuster wird auf den schwebenden Gate-Elektro­ den der Einzelzellen programmiert) für das gesamte Netzwerk 18. Wie weiter unten noch genauer erläutert werden wird, ist eine wesentliche Eigenschaft der Erfindung deren Fähigkeit, Blockwichtungen und das Maß der Hamming-Distanz auf einer Block-für-Block-Basis dynamisch zu ändern.
Im folgenden wird auf Fig. 2 Bezug genommen, in der ein Kopp­ lungsnetzwerk 12 zusammen mit einer Exklusiv-ODER-Zelle, einer globalen Summierleitung 32 und einer lokalen Summierleitung 39 gezeigt ist. Transistoren 37 und 38 mit schwebenden Gate-Elek­ troden bilden die Exklusiv-ODER-Zelle, die mit der lokalen Summierleitung 39 gekoppelt ist. Häufig finden bei diesen Bauelementen schwebende Gate-Elektroden aus Polysilizium Ver­ wendung, die von isolierendem Material (z. B. Siliziumdioxid) vollständig umgeben sind. Die Ladungsübertragung auf diese schwebenden Gate-Elektroden findet durch verschiedene Mecha­ nismen statt, wie Avalanche-Injektion, Kanalinjektion, Durch­ tunneln usw. Die Ladung auf der schwebenden Gate-Elektrode beeinflußt die Leitfähigkeit im Bauelement. Ist die Leitfähig­ keit oberhalb eines bestimmten Niveaus, so erscheint das Bau­ element als in einem Binärzustand programmiert. Liegt die Leitfähigkeit unter einem anderen Niveau, so erscheint das Bauelement als programmiert im anderen Binärzustand.
In Fig. 2 sind die Drain-Zonen der Bauelemente 37 und 38 mit der lokalen Summierleitung 39 gekoppelt, während ihre Source- Elektroden geerdet bleiben. Das Steuergate des Bauelements 37 ist direkt mit einer Spannungseingangsleitung 34, bezeichnet mit i j,k gekoppelt. Das Steuergate des Bauelements 38 mit schwebender Gate-Elektrode ist in ähnlicher Weise mit einem Spannungseingang auf der Leitung 35 gekoppelt.
Ein digitales Wichtungsmuster ist in der Exklusiv-ODER-Zelle der Fig. 2 durch Programmieren (d. h. Laden) eines Bauelements mit schwebender Gate-Elektrode auf einen vorgegebenen Pegel unter Löschung (d. h. Ladungsentfernung) des anderen Bauele­ ments gespeichert. Je nach dem gespeicherten Wichtungsmuster und der anstehenden Eingangsspannung kann eines der Bauelemen­ te mit schwebender Gate-Elektrode in der Exklusiv-ODER-Zelle leitend sein. Es ergibt sich generell ein Stromfluß, wenn eine Übereinstimmung zwischen dem Eingangsvektor und dem gespei­ cherten Wichtungsmuster festgestellt wird. Wenn entweder Bau­ element 37 oder 38 leitend ist, wird ein Strombeitrag zum Gesamtstrom I L geleitet, der in der Leitung 39 fließt. Wenn daher jede der Exklusiv-ODER-Zellen, die mit Leitung 39 gekop­ pelt sind, stromführend ist, ist die Stärke von I L groß. Wenn andererseits keine der mit der Leitung 39 gekoppelten Exklusiv-ODER-Zellen leitend ist, so ist der in der lokalen Summierleitung fließende Strom I L ziemlich klein (nur gleich dem Lese-Vormagnetisierungsstrom).
Während einer Leseoperation des Netzwerks 18 wird einer oder mehrere der Blöcke abgetastet, um die Übereinstimmung oder die Hamming-Distanz für diese Blöcke zu berechnen. Dieser Vorgang umfaßt die Kopplung der Ströme I L , die in den lokalen Sum­ mierleitungen fließen, an eine globale Summierleitung zur Erzeugung eines globalen Stroms I G . Der Strom I G ent­ spricht der Übereinstimmung zwischen den jedem zum Strom in der globalen Summierleitung zugeordneten Binärmuster. Zu be­ achten ist, daß jeder Spalte von lokalen Summierleitungen innerhalb des Netzwerks eine globale Summierleitung zugeordnet ist. Da jeder Block ein oder mehrere lokale Summierleitungen aufweisen kann, ist die Anzahl von globalen Summierleitungen stets gleich der Anzahl von im Netzwerk 18 angeordneten Spal­ ten. Es kann ein Block vorhanden sein, der nur eine einzige Spalte und damit nur eine einzige lokale und globale Summier­ leitung in Zuordnung zu der Spalte enthält.
In Fig. 2 enthält das die lokale Summierleitung 39 mit der globalen Summierleitung 32 koppelnde Kopplungsnetzwerk Feldef­ fektbauelemente 20-24. In dieser Anordnung enthalten die Tran­ sistoren einen Standard-Stromspiegel mit zusätzlichen Steuer­ merkmalen. Bei dem bevorzugten Ausführungsbeispiel sind die Feldeffekt-Bauelemente 20 und 21 gewöhnliche P-Kanal-Bauele­ mente, die unter Verwendung eines komplementären Metalloxid­ halbleiter (CMOS)-Prozesses hergestellt sind. Bauelemente 20 und 21 sind mit ihren Source-Elektroden mit V CC (d. h. Be­ triebspotential) gekoppelt und mit ihren Gate-Elektroden über eine Leitung 30 zusammen- und an die Drain-Elektrode des Bau­ elements 20 angeschaltet.
Entsprechend der Betriebsweise des Spiegels ist der durch den Transistor 21 fließende Strom eine direkte Funktion des durch den Transistor 20 fließenden Stroms. Mit anderen Worten, der durch Bauelement 21 fließende Strom ist direkt auf den Strom I L bezogen. Wenn die Leitung 26 (bezeichnet mit "GEKOPPELT") auf ein hohes Potential angehoben wird, gestattet das Bauele­ ment 22 einen Stromfluß durch Transistor 21 als Beitrag zu dem in der Leitung 32 fließenden Gesamtstrom I G . Die Leitung 26 ist während Leseoperationen normalerweise auf einem hohen Potential. Die Verwendung des Stromspiegels im Kopplungsnetz­ werk 12 ermöglicht daher einen Beitrag der lokalen Summier­ ströme zu dem in der zugehörigen globalen Summierleitung fließenden Strom.
Es ist einzusehen, daß die aktuelle Stärke des durch das Bau­ element 21 fließenden Stroms und damit des zum globalen Strom I G beitragenden Stroms eine Funktion des Größenverhältnisses der Bauelemente 20 und 21 ist. Das Bauelement 20 ist mit einer Bauelementengröße "K" gezeigt, die größer als 1 ist, während das Bauelement 21 mit einer Bauelementengröße von "1" in Fig. 2 gezeigt ist. Dies bedeutet, daß der lokale Summierleitungs­ strom I L um einen Faktor von K reduziert wird, wenn er an die globale Summierleitung 32 angelegt wird. Daher ist das Bauelementen-Größenverhältnis K eine Möglichkeit zur "Wich­ tung" der Blöcke. Dies gibt ein Mittel zum reduzieren der Stärke des Stroms I G innerhalb eines vernünftigen Bereichs.
Es ist außerdem einzusehen, daß die Polarität und Größe von K hardwaremäßig vorausdefiniert, durch Bauelemente mit schweben­ der Gate-Elektrode programmiert oder durch Direktzugriffsspei­ cher (RAM) oder ähnliche Ladungshaltebauelemente dynamisch angepaßt werden können.
Ein anderer Weg zur Steuerung der Blockwichtung besteht im Einbau eines Feldeffekt-Bauelements 23 zusammen mit einer Bezugsspannungsleitung (V REF 1) 27 in die Basisanordnung des Stromspiegels. Leitung 27 ist mit der Gate-Elektrode des Feld­ effektbauelements 23 gekoppelt, das vorzugsweise ein gewöhnli­ cher n-Kanal-CMOS-Transistor ist. Wenn das Potential auf der Leitung 27 angehoben wird, kann das Bauelement 23 stärker leitend werden, wodurch das Potential am Knoten 31 ansteigt. Der Anstieg des Potentials am Knoten 31 bewirkt seinerseits, daß auch die Stärke des in der Leitung 39 fließenden Stroms I L ansteigt. Auf diese Weise ist die Stärke des Stroms I L direkt auf die Stärke des Referenzpotentials V REF 1 bezogen, und die Steuerung des Potentials V REF 1 ist ein anderer Weg zur Einstellung der Blockwichtung. Durch selektives Anheben oder Senken der Referenzpotentiale für verschiedene Blöcke kann der Benutzer die Musterübereinstimmung für einzelne Blöcke oder für Gruppen von Blöcken berechnen. Wenn der Benut­ zer beispielsweise die Übereinstimmung zwischen einem Ein­ gangsbinärmuster und einem gespeicherten Wichtungsmuster in­ nerhalb eines Blocks 15 berechnen will, während alle anderen Blöcke ignoriert werden, wird die Referenzleitung V REF 2 auf ein hohes Potential angehoben, während gleichzeitig die Span­ nungsreferenzleitungen für alle anderen Blöcke auf Erde oder ein relativ niedriges Potential gebracht werden. Das Erden einer einem Block zugeordneten Referenzleitung hat den Effekt, daß dieser Block abgeschaltet wird. Dies verhindert jeden Beitrag von lokalem Strom zum globalen Strom der der Spalte des der Berechnung unterworfenen Blocks zugeordneten Summier­ leitung.
Nicht-identische Blockwichtungen können auch für Neuralberech­ nung von gestuften Eingaben wie Primärdaten, Sekundärdaten o. dgl. zweckmäßig sein. Unter Verwendung der LSBA-Architektur ist die Blockwichtung dynamisch adaptierbar, während die Wich­ tung der internen Zelle (z. B. der Exklusiv-ODER-Zelle) in der Matrix statisch oder nahezu statisch bleibt. Dieses Merkmal kann in Anwendungen nützlich sein, bei denen ein kritischer Teil von Eingangsdaten lokalisiert wird und sich dynamisch bewegt.
Beispielsweise kann die Blockwichtung so eingestellt werden, daß sie als positive oder negative Funktion der mittleren Intensität ihrer Eingänge oder derer anderer Blöcke folgt. Aufgrund der Möglichkeit zur Steuerung der Polarität der Blockwichtung kann eine Inter-Block-Berechnung, wie die Addi­ tion oder Subtraktion von inneren Produkten von Vektoren (Ein­ gangsvektoren und Zustandsvektoren, die in der Spalte gespei­ chert sind) auf einer lokalen Basis erreicht werden. Dieses Merkmal kann für Anwendungen zweckmäßig sein die Mikroprozes­ sor-gesteuerte Neuralnetzwerke involvieren, z. B. Blockwichtun­ gen von Eingangs/Ausgangs-Wegen unter Mikroprozessorsteue­ rung.
Bei dynamischen Wichtungsanwendungen in Echtzeit können Di­ rektzugriffsspeicher (RAM′s) oder andere Zwischenspeicher-Bau­ elemente anstelle der Exklusiv-ODER-Zelle 14 der Fig. 1A und 1B benutzt werden. Es ist jedoch zu beachten, daß ihre Anwendung wegen der binären Natur (z. B. RAM) oder begrenzten Speicherzeit dieser Bauelemente beschränkt ist. Wegen der normalerweise langen Programmier/Lösch-Zeiten, einschließlich der Verifikation des Programmzustandes, von Bauelementen mit schwebender Gate-Elektrode ist die Verwendung derartiger Bau­ elemente (ohne das Kopplungsnetzwerk-Steuermerkmal aufgrund des Bauelements 23 und V REF ) in dynamischen Wichtungsanwen­ dungen auf solche Fälle beschränkt, die bei geringen Geschwin­ digkeiten operieren. Die LSBA-Architektur der Erfindung stellt dynamische Blockwichtungsfähigkeiten zur Verfügung, bei denen sich die Blockwichtung dynamisch ändern kann, während die Wichtung jeder internen Zelle statisch bleibt. Gewiß ist die Änderung der Blockwichtung in der oben beschriebenen Weise wesentlich schneller als die Änderung des Programmierzustandes von Zellen mit schwebender Gate-Elektrode in den Blöcken auf sequentielle Weise.
Das Um- und Entladen der schwebenden Gate-Elektroden von Bau­ elementen 37 und 38 kann auf folgende Weise stattfinden. Wie­ derum wird auf Fig. 2 Bezug genommen, in der beispielsweise zum Programmieren des Bauelements 37 die Leitung 39 (verbunden mit der Drain-Zone von Bauelement 37) und die Leitung 34 (ver­ bunden mit dem Steuergate des Bauelements 37) auf ein hohes positives Programmierpotential von angenähert 12 Volt angeho­ ben werden. Die Spannung auf Leitung 39 wird unter Verwendung des Bauelements 24, der Leitung 28 (bezeichnet mit "DIREKT") und der globalen Summierleitung 32 gesteuert. Durch Anheben des Potentials auf der Leitung 28 wird das Feldeffektbauele­ ment 24 frei leitend gemacht, wodurch jedes auf Leitung 32 anstehende Potential auf die Leitung 39 übertragen wird. Da Leitung 32 von den externen Anschlüssen des Netzwerks 18 leicht zugegriffen werden kann, kann sie leicht als Mittel zur Vereinfachung des Programmierens der internen Zellen der Ma­ trix benutzt werden. Während Leseoperationen befindet sich die Leitung 28 auf einem niedrigen Potential, so daß das Feldef­ fektbauelement 24 nicht leitend ist.
Unter den oben beschriebenen Bedingungen bewirkt ein hohes positives Potential auf dem Steuergate von Bauelement 37, daß Elektronen die dünne Oxidschicht nahe dessen Drain-Elektrode durchtunneln und von dem schwebenden Gate eingefangen werden. Dadurch wird dessen "Programmier"-Schwellenwert erhöht. Elek­ tronen werden vom schwebenden Gate des Bauelements 37 dadurch abgezogen, daß das mit Leitung 34 verbundene Steuergate auf ein Potential auf Erde oder nahe Erde gebracht wird. Die Drain-Elektrode des Bauelements 37 wird dann auf ein hohes Potential gebracht, indem das Potential auf der Leitung 39 in der oben beschriebenen Weise angehoben wird. Das Anlegen einer hohen Vorspannung an die Drain-Elektrode des Bauelements 37 bei Erdung des zugehörigen Steuergates bewirkt, daß Elektronen die Isolierschicht vom schwebenden Gate zur Drain-Elektrode durchtunneln, wodurch der (Lösch)-Schwellwert des Bauelements 37 reduziert wird.
Für Neuralnetzwerk 18 wird die Blockgröße und die Anzahl von Ein- und Ausgängen für den Block aus Betrachtungen des Zellen- Lesestroms, der Metall-Elektrowanderung, der Chiparchitektur, des physikalischen Designs usw. entschieden. Es ist häufig erwünscht, den Zellen-Lesestrom für eine große Matrix so nie­ drig wie möglich zu machen, wie dies oben erörtert worden ist. Die untere Grenze für den Lesestrom bestimmt sich nach der Signalauflösung, Leckstrom, Rauschen, Offset und dem Beitrag der physikalischen Bauelementparameter in jeder der Muster-Ab­ stimmungszellen, d. h. der Exklusiv-ODER-Zellen. Bei einem Feld oder einer Matrix auf EPROM/EEPROM-Basis wird die Steuerung des Lesestroms auch durch verfügbare Spannungsreferenzquellen oder die Lesevormagnetisierungsschaltung begrenzt. So können beispielsweise Diodenspannungsabfälle oder MOS-Transistor- Schwellenspannungsänderungen in Abhängigkeit von der Tempera­ tur, Betriebsspannungsschwankungen, Prozeß usw. auftreten.
Unter weiterer Bezugnahme auf Fig. 2 ist klar, daß der Strom­ spiegel des Kopplungsnetzwerks 12 unter Verwendung nur der Transistoren 21 und 20 implementiert werden kann. Mit anderen Worten die Transistoren 22, 23 und 24 sind für die reine Funktion des Stromspiegels unwesentlich und können für gewisse Anwendungen entfallen. Wenn nötig kann für die Zwecke größerer Genauigkeit ein komplizierterer Stromspiegel, beispielsweise ein Wilson-Stromspiegel verwendet werden. Selbstverständlich geht bei Einsparung des Transistors 23 und seiner zugehörigen V REF 1-Leitung eine gewisse Steuerung über die Blockwichtung verloren, und parasitäre Programmiereffekte können entschei­ dend werden. Man erinnere sich daran, daß V REF 1 zusammen mit dem Transistorflächenverhältnis K die Blockwichtung schafft. In Fig. 2 ist K ein fester Wert, jedoch V REF 1 für dynamische Blockwichtungsanwendungen variabel.
Fig. 3 zeigt ein alternatives Ausführungsbeispiel für das Kopplungsnetzwerk 12. Die Schaltung gemäß Fig. 3 ist in jeder Hinsicht die gleiche wie diejenige gemäß Fig. 2 mit der Aus­ nahme, daß das Steuergate des Feldeffekttransistors 23 mit dem Ausgang des Verstärkers 41 gekoppelt ist. Verstärker 41 ist ein gewöhnlicher Differenzverstärker, der in zahlreichen Schaltungskonfigurationen implementiert werden kann. Der nega­ tive Eingang des Verstärkers 41 ist mit der lokalen Summier­ leitung 39 und der positive Eingang des Verstärkers 41 mit V REF -Leitung 27 gekoppelt. Gewöhnlich erstreckt sich die Leitung 27 über den Gesamtblock und verbindet jedes Kopplungs­ netzwerk in der in Fig. 3 dargestellten Weise.
Wenn im Betrieb die Spannungsreferenzleitung 27 relativ zum Potential auf der Leitung 39 angehoben wird, erhöht der Ver­ stärker 41 seine Ausgangsspannung und versucht, die negative Eingangsspannung, d. h. die Spannung auf der Leitung 39 auf dasselbe Niveau zu bringen wie an seinem positiven Eingang. Das alternative Ausführungsbeispiel der Fig. 3 hat den Vorteil einer genaueren Steuerung der Blockwichtungen im Vergleich zum Kopplungsnetzwerk gemäß Fig. 2.
Wie in Verbindung mit Fig. 2 erörtert worden ist, kann Transi­ stor 22 fortgelassen und die Source-Elektrode des Transistors 21 direkt an die globale Summierleitung 32 angeschaltet wer­ den. Leckstromempfindliche Schaltungen profitieren jedoch aus der Einbindung des Bauelements 22 in das Kopplungsnetzwerk 12.
In beiden Fig. 2 und 3 wirkt das Netzwerk 12 als für Lese­ operationen verwendbarer Stromspiegel, wenn Transistor 22 "eingeschaltet" und Transistor 24 "ausgeschaltet" ist. Wenn beide Bauelemente 22 und 24 "ausgeschaltet" sind, ist das Kopplungsnetzwerk abgetrennt, und ein Beitrag des Blocks zum Strom der globalen Summierleitung 32 wird verhindert. Ein anderer Weg zum Entaktivieren des Stromspiegels ist das Erden der Spannungsreferenzleitung 27 für einen vorgegebenen Block. Immer wenn der Transistor 24 im "Einschalt"-Zustand ist, ist unabhängig vom Zustand des Bauelements 22 die globale Summier­ leitung 32 direkt mit der lokalen Summierleitung 39 verbunden. Die direkte Kopplung von Leitungen 32 und 39 ist besonders zweckmäßig für das Programmieren der Exklusiv-ODER-Zellen des Feldes bzw. der Matrix.
Im folgenden wird auf Fig. 4 Bezug genommen, in der ein alter­ natives Ausführungsbeispiel des Kopplungsnetzwerks 12 gezeigt ist. Die Schaltung gemäß Fig. 4 weist eine zusätzliche lokale Erdleitung 42 (L GND ) auf, welche die Source-Elektroden der Bauelemente mit schwebender Gate-Elektrode für jede Exklusiv- ODER-Zelle mit den Drain-Elektroden von n-Kanal-Feldeffekt­ bauelementen 46 und 43 koppelt. Die Operationsweise des Kopp­ lungsnetzwerks gemäß Fig. 4 ist wie folgt.
Während der Leseoperationen wird die Bezugsspannung V REF auf Leitung 27 auf ein hohes Vorspannpotential angehoben. Dies aktiviert Verstärker 41, schaltet Transistor 23 durch und aktiviert dadurch den Stromspiegel. -Leitung 47 (gekop­ pelt mit den Gate-Elektroden von Bauelement 43 und p-Kanal- Bauelement 44) wird auf ein hohes positives Potential angeho­ ben. Dies schaltet Bauelement 44 aus und Bauelement 43 ein, wodurch ein Erdpotential auf Leitung 42 zur Anordnung durchge­ schaltet wird. -Leitung 48, die mit den Gate-Elektroden des p-Kanal-Bauelements 52 und des n-Kanal-Bauelements 22 verbun­ den ist, ist während der Leseoperationen ebenfalls auf einem hohen Potential. Dies hat die Wirkung, daß Bauelement 42 ge­ sperrt und Bauelement 22 leitend wird und dadurch den lokalen Summierleitungsstrom I L zum globalen Summierleitungsstrom auf der Leitung 32 beitragen läßt.
Während des Programmierbetriebs ist die Leitung 17 geerdet, um den Stromspiegel zu entaktivieren. -Leitung 48 wird auch auf ein niedriges Potential (z. B. Erde) gebracht, um Bauele­ ment 22 zu entaktivieren und Bauelement 52 durchzuschalten. -Leitung 47 wird danach auf ein hohes positives Potenti­ al, wie das Programmierpotential V PP (= 12 Volt) gebracht. Dies schaltet Bauelement 43 durch, das die Source-Elektroden der entsprechenden Zellen mit schwebenden Gate-Elektroden auf Erdpotential bringt, Bauelement 44 wird ausgeschaltet, wenn 47 auf hohem Potential ist. Ebenfalls während des Pro­ grammierbetriebs ist V PGM/ERASE -Leitung 50 mit einer Pro­ grammier-Drain-Vorspannung verbunden, die bei dem beschriebe­ nen Ausführungsbeispiel irgendwo zwischen 5 und 8 Volt liegen kann. Wenn sich die globale Summierleitung 32 auf einem hoch positiven Potential befindet, so sind Bauelemente 51 und 52 eingeschaltet, wodurch das Programmier- und Löschpotential auf der Leitung 50 auf die lokale Summierleitumg 39 durchgekoppelt wird. Durch selektives Anheben des Potentials auf den Ein­ gangsvektorleitungen i j,k kann jedes der Bauelemente mit schwebender Gate-Elektrode, wie die Bauelemente 37 und 38, in Folge programmiert werden.
Da jedes der Bauelemente gemäß den Fig. 1 bis 5 in einem CMOS-Prozeß implementiert ist, ist die richtige Vorspannung der Senken während des Programmier- und Löschbetriebs wichtig. Für n-Senken-CMOS-Prozesse werden die Senken von Transistoren 21 und 20 auf ihre höchst mögliche Spannung (V PP in konven­ tionellen EPROM-EEPROM-Produkten) vorgespannt, die an die GSL- und LSL-Leitungen angelegt werden können.
Während des Löschbetriebs ist die Bezugsspannungsleitung 27 geerdet, um den Stromspiegel zu entaktivieren; -Leitung 47 von auf ein niedriges Potential (d. h. Erde) gebracht,; PGM-Leitung 48 wird auf hoch positives Potential (z. B. V PP =12 Volt) gebracht; und V PGM/ERASE -Leitung 50 wird mit einem hohen positiven Potential (z. B. 12 Volt) verbunden. Dies hat den Effekt, daß Bauelemente 23, 42 und 43 ausgeschal­ tet werden. Wenn die globale Summierleitung 32 "hoch" ist, so sind Bauelemente 46 und 44 eingeschaltet, wodurch ein Verbin­ dungsweg für die auf Leitung 50 befindliche Programmier- und Löschspannung zur lokalen Erdleitung 42 gebildet wird. Durch diese Technik können ausgewählte Spalten gelöscht werden.
Wie für den Fachmann klar ist, kann Transistor 46 optionell durch einen p-Kanal-Transistor ersetzt werden, um Spannungsab­ fälle über die Source/Drain-Zone des Bauelements 46 zu vermei­ den. In dieser Situation wird die Spaltenauswahl dadurch be­ wirkt, daß die globale Summierleitung 32 auf ein niedriges Potential gebracht wird. Wenn außerdem ERASE-Leitung 42 loka­ lisiert wird, d. h. eine getrennte ERASE-Leitung für jeden Block vorgesehen wird, so können Löschoperationen auf eine ausgewählte Spalte eines ausgewählten Blocks konzentriert werden.
Der Hauptvorteil des in Fig. 4 gezeigten Kopplungsnetzwerks gegenüber den zuvor erörterten Netzwerken besteht darin, daß die Schaltung gemäß Fig. 4 Störungen benachbarter Blöcke wäh­ rend Programmier/Lösch-Operationen reduziert. Außerdem unter­ stützt die Schaltung gemäß Fig. 4 örtliche Blitz-Löschopera­ tionen für die ausgewählten Spalten eines ausgewählten Blocks, soweit kostengünstige Blitz-EEPROM′s in den Muster-Abstim­ mungszellen verwendet werden. (Derzeit sind konventionelle EEPROM-Zellen mehrfach größer und erfordern eine komplizierte­ re Verarbeitung als Blitz-EEPROM-Zellen.)
Im folgenden wird auf Fig. 5 Bezug genommen, in der ein alter­ natives Ausführungsbeispiel des grundsätzlichen Kopplungsnetz­ werks gezeigt ist. Die Schaltung gemäß Fig. 5 ist besonders zweckmäßig beim Implementieren einer negativen Blockwichtung. Wie im Falle der Fig. 2 bis 4 bilden Transistoren 20 und 21 in Fig. 5 den Basis-Stromspiegel. Verstärker 41 und n-Kanal- Bauelemente 23 liefern die Drain-Vorspannung während Leseope­ rationen für die lokale Summierleitung 42. Das alternative Ausführungsbeispiel gemäß Fig. 5 weist n-Kanal-Bauelemente 61 und 60 auf. N-Kanal-Bauelement 61 ist zwischen der globalen Summierleitung 32 und der lokalen Summierleitung 42 einge­ schaltet. Das Gate des Bauelements 61 ist mit einem Ende des n-Kanal-Bauelements 60 gekoppelt. Das andere Ende des Bauele­ ments 60 ist mit dem Ausgang des Verstärkers 41 gekoppelt. Das Gate des Bauelements 60 ist mit Leitung 56 (bezeichnet mit W-) gekoppelt. N-Kanal-Bauelement 58 liegt zwischen dem Ausgang des Bauelements 41 und dem Gate des Bauelements 23. Das Gate des Bauelements 48 ist mit Leitung 55 (bezeichnet mit W+) gekoppelt. Wie zuvor ist die Referenzleitung 27, V REF , mit dem positiven Eingang des Verstärkers 41 verbunden und liefert die Wichtung für jeden Block innerhalb des Neuralnetzwerks.
Es sei angenommen, daß Leitung 55 "hoch" und Leitung 56 "nie­ drig" ist. In dieser Situation ist Bauelement 58 durchgeschal­ tet, Bauelement 60 gesperrt, und der Block ist für Leseopera­ tionen in der oben erörterten Weise gekoppelt (d. h. positive Kopplung ist dem Block zugeordnet). Wenn Leitung 55 jedoch "niedrig" und Leitung 56 "hoch" ist, so ist Bauelement 60 durchgeschaltet, Bauelement 58 gesperrt, und die Kopplung wird mit umgekehrter Polarität durchgeführt. Daher ist die Schal­ tung gemäß Fig. 5 zweckmäßig in Situationen, in denen die zugeordnete Blockwichtung einen mit Vorzeichen behafteten Wert annimmt (die Größe der Wichtungsfunktion kann immer noch durch die Spannung V REF gesteuert werden).
Zu beachten ist, daß in Fig. 5 die den Programmier- und Lösch­ pfad bildende Schaltung der Klarheit wegen nicht gezeigt ist. Auch der Stromspiegel ist mit einem Kopplungsverhältnis von Eins gezeigt. Ein Kopplungsverhältnis von Eins ist zweckmäßig, jedoch nicht notwendig zur Anpassung der Polaritäten. Zum Implementieren anderer Kopplungsverhältnisse, d. h. kleiner als Eins, ist ein zusätzlicher Stromspiegel für den Negativwich­ tungsweg erforderlich.
Im Rahmen des Erfindungsgedankens sind verschiedene Abwandlun­ gen möglich. Obwohl in der vorstehenden Beschreibung ein spe­ zieller Weg der Implementierung einer LSBA-Architektur unter Verwendung von Exklusiv-ODER-Abstimmzellen (matching cells) beschrieben worden ist, können andere Implementierungen unter Verwendung anderer Zellen und verschiedener Felder unter Ein­ schluß des erfindungsgemäßen Grundkonzepts vorgesehen sein. Generell kann eine andere Kopplungsschaltung für andere Re­ chenfelder notwendig werden.

Claims (26)

1. Assoziativnetzwerk, dadurch gekennzeichnet, daß mehrere Blöcke (15) mit jeweils mehreren Zellen (14) vorgesehen sind, die so angeordnet sind, daß sie ein Feld oder eine Matrix zur Berechnung der Übereinstimmung zwischen zwei Binärmustern bilden, daß die Zellen einen Strombeitrag zu mehreren lokalen Summierleitungen (39) im Block leisten und daß die lokalen Summierleitungen die individuellen Strombeiträge aus den Zel­ len derart summieren, daß der gesamte lokale Strom (I L ) des Blocks der Übereinstimmung entspricht.
2. Netzwerk nach Anspruch 1, dadurch gekennzeichnet, daß mehrere globale Summierleitungen (32) vorgesehen sind und daß jeder Block (15) außerdem mehrere Kopplungselemente (12) zur Kopplung jeder der globalen Summierleitungen (32) mit einer zugehörigen lokalen Summierleitung (39) zur Übertragung der in den lokalen Summierleitungen fließenden Ströme (I L ) auf­ weist, um dadurch einen globalen Gesamtstrom (I G ) zu gewin­ nen, der der Gesamtübereinstimmung zwischen den Binärmustern aller Blöcke innerhalb des Netzwerks entspricht.
3. Netzwerk nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Zellen (14) so angeordnet und ausgebildet sind, daß sie eines der Binärmuster speichern, während das andere der Binärmuster als Eingang an die Zellen angelegt wird.
4. Netzwerk nach einem der Ansprüche 1 bis 3, dadurch ge­ kennzeichnet, daß Programmiermittel zum Programmieren des einen der Binärmuster in den Zellen (14) vorgesehen sind.
5. Netzwerk nach Anspruch 4, dadurch gekennzeichnet, daß die Zellen (14) mehrere Bauelemente (37, 38) aufweisen, von denen jedes eine schwebende Gate-Elektrode zur Speicherung des einen der Binärmuster aufweist.
6. Netzwerk nach Anspruch 5, dadurch gekennzeichnet, daß jedes der Kopplungselemente (12) erste und zweite Feldeffekt­ bauelemente (21, 20) aufweist, die als Stromspiegel angeordnet sind, und daß der Stromfluß durch das erste Feldeffektbauele­ ment (21) eine vom Stromfluß in dem zweiten Feldeffektbauele­ ment (20) abhängige Funktion ist.
7. Netzwerk nach Anspruch 6, dadurch gekennzeichnet, daß Mittel (23) zur Wichtung der Kopplungsstärke zwischen den lokalen Summierleitungen (39) innerhalb eines Einzelblocks (15) und ihren zugehörigen globalen Summierleitungen (32) vorgesehen sind, wobei alle andere Blöcke ignoriert werden.
8. Netzwerk nach Anspruch 7, dadurch gekennzeichnet, daß die Wichtungsmittel ein drittes Feldeffektbauelement (23) aufwei­ sen, das zwischen dem zweiten Feldeffektbauelement (20) und einer der lokalen Summierleitungen (39) in Reihe geschaltet ist, und daß die Wichtungsmittel außerdem ein mit der Gate- Elektrode des dritten Feldeffektbauelements gekoppeltes Refe­ renzpotential (V REF ) derart aufweisen, daß bei Anstehen des Referenzpotentials an jedem der Kopplungselemente innerhalb des Blocks der Block zum Zwecke der Berechnung der Überein­ stimmung aktivierbar ist.
9. Netzwerk nach Anspruch 8, dadurch gekennzeichnet, daß das Kopplungselement (12) außerdem ein viertes Feldeffektbauele­ ment (22) aufweist, das zwischen dem ersten Feldeffektbauele­ ment (21) und der einen der globalen Summierleitungen (32) in Reihe geschaltet ist, wobei das vierte Feldeffektbauelement den Stromspiegel mit den globalen Summierleitungen koppelt und die Gate-Elektrode des vierten Feldeffektbauelements mit den Wichtungsmitteln (32) zur Steuerung der Kopplungsstärke gekop­ pelt ist.
10. Netzwerk nach Anspruch 9, dadurch gekennzeichnet, daß ein fünftes Feldeffektbauelement (24) mit den Programmiermitteln gekoppelt ist, um die globalen Summierleitungen (32) mit den lokalen Summierleitungen (39) zur Erleichterung der Program­ mierung der Zellen (14) elektrisch zu koppeln.
11. Netzwerk nach einem der Ansprüche 6 bis 10, dadurch ge­ kennzeichnet, daß die ersten und zweiten Feldeffektbauelemente (20, 21) p-Kanal-Bauelemente sind.
12. Netzwerk nach Anspruch 11, dadurch gekennzeichnet, daß die dritten, vierten und fünften Feldeffektbauelemente (22 ... 24) n-Kanal-Bauelemente sind.
13. Assoziativnetzwerk zum Berechnen der Hamming-Distanz zwischen zwei Binärmustern, dadurch gekennzeichnet, daß das Netzwerk (18) eine Anzahl von Blöcken (15) aufweist, die durch eine Anzahl von globalen Spaltenleitungen (32) mit­ einander gekoppelt sind und jeweils eine Matrixanordnung von Halbleiterzellen (14) mit lokalen Spaltenleitungen (39) auf­ weisen, wobei jede Spaltenleitung mit einer separaten Spalte von Zellen gekoppelt ist, jede Zelle der Matrix einen Aus­ gangsstrom erzeugt, dessen Wert von der relativen Übereinstim­ mung zwischen entsprechenden Elementen eines Eingangsspan­ nungsvektors und eines in der Zelle gespeicherten Wichtungsmu­ sters abhängig ist, daß der Ausgangsstrom zum lokalen Summier­ strom (I L ) beiträgt, der in jeder der lokalen Spaltenleitun­ gen (39) fließt, und daß die Blöcke (15) außerdem eine Anzahl von Kopplungselementen (12) zur Kopplung jeder der lokalen Spaltenleitungen (39) mit einer zugehörigen (32) der globalen Spaltenleitungen aufweisen, wobei die Anordnung so getroffen ist, daß jeder lokale Summierstrom (I L ) zu einem globalen Summierstrom (I G ) beiträgt, dessen Wert der Hamming-Distanz entspricht.
14. Assoziativnetzwerk nach Anspruch 13, dadurch gekennzeich­ net, daß eine Progammiereinrichtung (24, 41) zum Programmieren des Wichtungsmusters in den Zellen (14) vorgesehen ist.
15. Assoziativnetzwerk nach Anspruch 13 oder 14, dadurch gekennzeichnet, daß die Zellen (14) mehrere Halbleiterbauele­ mente (37, 38) aufweisen, die jeweils mit einer schwebenden Gate-Elektrode zum kollektiven Speichern des Wichtungsmusters versehen sind.
16. Assoziativnetzwerk nach einem der Ansprüche 13 bis 15, dadurch gekennzeichnet, daß die Kopplungselemente (12) jeweils einen Stromspiegel (20 ... 24) enthalten, der über eine erste Leitung mit der einen (32) der globalen Spaltenleitungen (32) und über eine zweite Leitung mit einer zugehörigen lokalen Spaltenleitung (39) derart gekoppelt ist, daß durch die loka­ len Spaltenleitungen fließender Strom (I L ) zu dem in globa­ len Spaltenleitungen (32) fließenden Strom (I G ) beiträgt.
17. Assoziativnetzwerk nach einem der Ansprüche 13 bis 16, dadurch gekennzeichnet, daß jedes der Kopplungselemente (12) erste und zweite Feldeffekttransistoren (21, 20) aufweist, die jeweils mit ihren Gate-Elektroden zusammengeschaltet sind, wobei der erste Transistor (21) mit einer der globalen Spal­ tenleitungen (I G ) und der zweite Transistor (20) mit der zugehörigen (39) der lokalen Spaltenleitungen und mit seiner Gate-Elektrode gekoppelt ist, so daß ein Stromspiegel gebildet ist, in welchem der Stromfluß durch den ersten Transistor (21) von dem Stromfluß in dem zweiten Transistor (20) abhängig ist.
18. Assoziativnetzwerk nach einem der Ansprüche 13 bis 17, dadurch gekennzeichnet, daß außerdem eine Steuerschaltung (23, 27) zum selektiven Berechnen der Übereinstimmung innerhalb eines Einzelblocks (15) des Netzwerks (18) unter Ignorierung aller anderen Blöcke vorgesehen ist.
19. Assoziativnetzwerk nach Anspruch 18, dadurch gekennzeich­ net, daß die Steuereinrichtung einen dritten Feldeffekttransi­ stor (23) aufweist, der zwischen dem zweiten Transistor (20) und einem (39) der lokalen Spaltenleitungen in Reihe geschal­ tet ist, und daß die Steuereinrichtung außerdem ein mit dem Gate des dritten Transistors (23) gekoppeltes Referenzpotenti­ al (V REF 1) aufweist, bei dessen Anstehen an jedem der Kopp­ lungselemente (12) innerhalb des Blocks (15) der Block zum Zwecke der Berechnung der Übereinstimmung aktiviert wird.
20. Assoziativnetzwerk nach Anspruch 19, dadurch gekennzeich­ net, daß jedes Kopplungselement (12) außerdem einen vierten Feldeffekttransistor (22) aufweist, der zwischen dem ersten Feldeffekttransistor (21) und der einen (32) der globalen Spaltenleitungen in Reihe geschaltet ist und den Stromspiegel mit einer der globalen Spaltenleitungen koppelt, wobei die Gate-Elektrode des vierten Transistors mit der Steuereinrich­ tung gekoppelt ist.
21. Assoziativnetzwerk nach einem der Ansprüche 17 bis 20, dadurch gekennzeichnet, daß die ersten und zweiten Transisto­ ren (21, 20) p-Kanal-Bauelemente sind.
22. Assoziativnetzwerk nach Anspruch 1, dadurch gekennzeich­ net, daß die dritten und vierten Feldeffekttransistoren (23, 22) n-Kanal-Bauelemente sind.
23. Neuralnetzwerk mit mehreren Blöcken, dadurch gekennzeich­ net, daß jeder Block (15) eine Anzahl von entlang mehrerer Spaltenleitungen (39) angeordneten Zellen (14) aufweist, die jeweils einen Strombeitrag auf die Spaltenleitungen proportio­ nal zur Übereinstimmung zwischen einem an die Zellen angeleg­ ten Eingangsmuster und einem gespeicherten Wichtungsmuster leisten, daß die Blöcke (15) außerdem mehrere Kopplungselemen­ te (12) in Zuordnung zu den Spaltenleitungen (39) zur Kopplung jeder der Spaltenleitungen (39) mit einer zugehörigen globalen Summierleitung (32) derart aufweisen, daß der in der Spalten­ leitung (39) fließende Strom (I L ) eines Blocks (15) auf der globalen Summierleitung (32) mit den Strömen aus anderen Blöcken zugeordneten Spaltenleitungen summierbar ist, wobei der Gesamtstrom (I G ) aller globaler Summierleitungen (32) des Netzwerks (18) ein Maß für die Gesamtübereinstimmung zwi­ schen allen Eingangsmustern und gespeicherten Wichtungsmustern des Netzwerks liefert.
24. Neuralnetzwerk nach Anspruch 23, dadurch gekennzeichnet, daß das Kopplungselement (12) einen Stromspiegel enthält.
25. Neuralnetzwerk nach Anspruch 23 oder 24, dadurch gekenn­ zeichnet, daß außerdem Wichtungsmittel (23, 27) zum selektiven Wichten der Verbindung zwischen jeder der globalen Summierlei­ tungen (32) und jeder der Spaltenleitungen (39) derart vorge­ sehen sind, daß der Strombeitrag individueller Blöcke (15) zu den globalen Summierleitungen (32) steuerbar ist.
26. Neuralnetzwerk nach einem der Ansprüche 23 bis 25, da­ durch gekennzeichnet, daß Mittel zum Steuern des Kopplungsver­ hältnisses zwischen jeder der Spaltenleitungen (39) und jeder der zugehörigen globalen Summierleitungen (32) zur Verringe­ rung der Stärke des Gesamtstroms (I G ) in den globalen Sum­ mierleitungen (32) vorgesehen sind.
DE4016197A 1989-05-26 1990-05-19 Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermustern Withdrawn DE4016197A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/357,411 US5040134A (en) 1989-05-26 1989-05-26 Neural network employing leveled summing scheme with blocked array

Publications (1)

Publication Number Publication Date
DE4016197A1 true DE4016197A1 (de) 1990-11-29

Family

ID=23405474

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4016197A Withdrawn DE4016197A1 (de) 1989-05-26 1990-05-19 Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermustern

Country Status (4)

Country Link
US (1) US5040134A (de)
JP (1) JPH0312789A (de)
DE (1) DE4016197A1 (de)
GB (1) GB2231991B (de)

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8816278D0 (en) * 1988-07-08 1988-08-10 British Telecomm Optical space switch
US5220641A (en) * 1988-10-11 1993-06-15 Kabushiki Kaisha Toshiba Multi-layer perceptron circuit device
JPH0782481B2 (ja) * 1989-12-26 1995-09-06 三菱電機株式会社 半導体神経回路網
JP2809791B2 (ja) * 1990-02-27 1998-10-15 株式会社東芝 モジュール割当方法
US5146420A (en) * 1990-05-22 1992-09-08 International Business Machines Corp. Communicating adder tree system for neural array processor
US5337395A (en) * 1991-04-08 1994-08-09 International Business Machines Corporation SPIN: a sequential pipeline neurocomputer
US5353382A (en) * 1990-10-15 1994-10-04 California Institute Of Technology Programmable synapse for neural network applications
US5206541A (en) * 1991-04-30 1993-04-27 The Johns Hopkins University Current-mode based analog circuits for synthetic neural systems
US5410490A (en) * 1991-09-03 1995-04-25 Hewlett-Packard Company Electromigration verification method and apparatus
US10361802B1 (en) 1999-02-01 2019-07-23 Blanding Hovenweep, Llc Adaptive pattern recognition based control system and method
US6850252B1 (en) 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US6418424B1 (en) 1991-12-23 2002-07-09 Steven M. Hoffberg Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
US5903454A (en) 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
US6400996B1 (en) 1999-02-01 2002-06-04 Steven M. Hoffberg Adaptive pattern recognition based control system and method
US8352400B2 (en) 1991-12-23 2013-01-08 Hoffberg Steven M Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore
US5247206A (en) * 1992-03-12 1993-09-21 Intel Corporation Neural network accommodating parallel synaptic weight adjustments in a single cycle
US5237210A (en) * 1992-03-12 1993-08-17 Intel Corporation Neural network accomodating parallel synaptic weight adjustments for correlation learning algorithms
US5557686A (en) * 1993-01-13 1996-09-17 University Of Alabama Method and apparatus for verification of a computer user's identification, based on keystroke characteristics
US5426602A (en) * 1993-03-31 1995-06-20 Mentor Graphics Corporation Detection of multiple hits within a device having multiple sense outputs
US5479574A (en) * 1993-04-01 1995-12-26 Nestor, Inc. Method and apparatus for adaptive classification
US5455784A (en) * 1993-08-09 1995-10-03 Nec Corporation Associative memory device with small memory cells selectively storing data bits and don't care bits
US5951711A (en) * 1993-12-30 1999-09-14 Texas Instruments Incorporated Method and device for determining hamming distance between two multi-bit digital words
US5528516A (en) * 1994-05-25 1996-06-18 System Management Arts, Inc. Apparatus and method for event correlation and problem reporting
US5586219A (en) * 1994-09-30 1996-12-17 Yufik; Yan M. Probabilistic resource allocation system with self-adaptive capability
US5581485A (en) * 1994-12-08 1996-12-03 Omni Microelectronics, Inc. Analog vector distance measuring and vector quantization architecture
JP2643896B2 (ja) * 1995-02-23 1997-08-20 日本電気株式会社 半導体メモリ
US5720004A (en) * 1995-09-29 1998-02-17 United Microelectronics Corporation Current-mode hamming neural network
US6055524A (en) * 1997-10-06 2000-04-25 General Cybernation Group, Inc. Model-free adaptive process control
US7904187B2 (en) 1999-02-01 2011-03-08 Hoffberg Steven M Internet appliance system and method
US6317349B1 (en) 1999-04-16 2001-11-13 Sandisk Corporation Non-volatile content addressable memory
US6166938A (en) * 1999-05-21 2000-12-26 Sandisk Corporation Data encoding for content addressable memories
US6157558A (en) * 1999-05-21 2000-12-05 Sandisk Corporation Content addressable memory cell and array architectures having low transistor counts
US6684112B1 (en) * 2000-04-11 2004-01-27 George Shu-Xing Cheng Robust model-free adaptive control
JP3998904B2 (ja) * 2000-09-14 2007-10-31 株式会社ルネサステクノロジ 論理回路の設計方法、論理回路の設計支援システム、及びコンピュータ読取り可能な記録媒体
US10453528B1 (en) 2018-06-14 2019-10-22 International Business Machines Corporation Controlling aggregate signal amplitude from device arrays by segmentation and time-gating
US10861551B2 (en) 2018-12-28 2020-12-08 Micron Technology, Inc. Memory cells configured to generate weighted inputs for neural networks

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4773024A (en) * 1986-06-03 1988-09-20 Synaptics, Inc. Brain emulation circuit with reduced confusion

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3934231A (en) * 1974-02-28 1976-01-20 Dendronic Decisions Limited Adaptive boolean logic element
US4090174A (en) * 1976-11-01 1978-05-16 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences and rectangular subarrays from an array stored in a modified word organized random access memory system
US4660166A (en) * 1985-01-22 1987-04-21 Bell Telephone Laboratories, Incorporated Electronic network for collective decision based on large number of connections between signals
WO1987003411A1 (en) * 1985-11-27 1987-06-04 The Trustees Of Boston University Pattern encoding system
US4760437A (en) * 1986-01-03 1988-07-26 American Telephone And Telegraph Company, At&T Bell Laboratories Neural networks
US4796199A (en) * 1987-02-24 1989-01-03 Oregon Graduate Center Neural-model, information-handling architecture and method
US4782460A (en) * 1987-04-06 1988-11-01 American Telephone And Telegraph Company, At&T Bell Laboratories Computing apparatus comprising a programmable resistor
GB2220289A (en) * 1988-06-29 1990-01-04 Philips Electronic Associated Picture processing apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4773024A (en) * 1986-06-03 1988-09-20 Synaptics, Inc. Brain emulation circuit with reduced confusion

Also Published As

Publication number Publication date
GB9004783D0 (en) 1990-04-25
JPH0312789A (ja) 1991-01-21
GB2231991A (en) 1990-11-28
GB2231991B (en) 1993-09-22
US5040134A (en) 1991-08-13

Similar Documents

Publication Publication Date Title
DE4016197A1 (de) Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermustern
DE3925153C2 (de)
DE4035660C2 (de) Elektrisch programmierbare Speichereinrichtung und Verfahren zum Zugreifen/Programmieren von Speicherzellen
DE4343722C2 (de) Präzisions-Referenzspannungsschaltung, die sich für die Verwendung in Computersystemen eignet
DE3037315C2 (de)
DE3424765C2 (de) Mikrocomputer
DE3924778A1 (de) Halbleiterzelle fuer ein neurales netzwerk u. dgl.
DE112006000661B4 (de) Stromkompensierte Drainspannungsregelungs-Schaltung
DE4128918C2 (de) Leseverstärker für nichtflüchtige Halbleiterspeichereinrichtungen
DE4024930C2 (de)
DE2742526A1 (de) Elektrisch programmierbarer mos- festwertspeicher
DE4028575A1 (de) Flash-eprom-speicheranordnung
DE4316625A1 (de) Neuronales Netzwerk
DE4014117A1 (de) Elektrisch loeschbarer programmierbarer festwertspeicher mit nand-zellenbloecken
DE112016000654T5 (de) Mehrzustands-Programmierung für nichtflüchtigen Speicher
DE102020130963B4 (de) Leseverstärker und betriebsverfahren für nichtflüchtigen speicher
DE3035484A1 (de) Nicht-fluechtiger halbleiterspeicher
DE1512390A1 (de) Schaltungsanordnung zur Realisierung logischer Funktionen
DE2655999A1 (de) Speicherzelle mit transistoren, die mit verschiedenen schwellenwertspannungen arbeiten
DE112004002851T5 (de) Halbleitervorrichtung und Programmierverfahren
DE2242332B2 (de) Zelle für eine integrierte Speicherschaltung mit wahlfreiem Zugriff
DE112019003249T5 (de) Schaltung und layout für resistive direktzugriffsspeicherarrays mit zwei bitleitungen pro spalte
WO2022063658A1 (de) Skalarproduktschaltung und verfahren zum berechnen binärer skalarprodukte eines eingangsvektors mit gewichtsvektoren
DE69629925T2 (de) Spannungsschaltkreis für negative spannungen
DE2154025A1 (de) Binäres Speicherelement

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8136 Disposal/non-payment of the fee for publication/grant