DE4016197A1 - Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermustern - Google Patents
Neuralnetzwerk mit einer matrix zum berechnen der uebereinstimmung zwischen zwei binaermusternInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C15/00—Digital 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/04—Digital 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/046—Digital 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/192—Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
- G06V30/194—References 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.
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)
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)
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)
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 |
-
1989
- 1989-05-26 US US07/357,411 patent/US5040134A/en not_active Expired - Lifetime
-
1990
- 1990-03-02 GB GB9004783A patent/GB2231991B/en not_active Expired - Fee Related
- 1990-04-13 JP JP2096618A patent/JPH0312789A/ja active Pending
- 1990-05-19 DE DE4016197A patent/DE4016197A1/de not_active Withdrawn
Patent Citations (1)
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 |