DE2259725A1 - Funktionsspeicher aus assoziativen zellen mit mehreren zustaenden - Google Patents

Funktionsspeicher aus assoziativen zellen mit mehreren zustaenden

Info

Publication number
DE2259725A1
DE2259725A1 DE2259725A DE2259725A DE2259725A1 DE 2259725 A1 DE2259725 A1 DE 2259725A1 DE 2259725 A DE2259725 A DE 2259725A DE 2259725 A DE2259725 A DE 2259725A DE 2259725 A1 DE2259725 A1 DE 2259725A1
Authority
DE
Germany
Prior art keywords
state
inputs
memory according
decoder
function memory
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.)
Granted
Application number
DE2259725A
Other languages
English (en)
Other versions
DE2259725C3 (de
DE2259725B2 (de
Inventor
Arnold Weinberger
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2259725A1 publication Critical patent/DE2259725A1/de
Publication of DE2259725B2 publication Critical patent/DE2259725B2/de
Application granted granted Critical
Publication of DE2259725C3 publication Critical patent/DE2259725C3/de
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
    • H03K19/17708Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Static Random-Access Memory (AREA)
  • Logic Circuits (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Manipulation Of Pulses (AREA)

Description

Aktenzeichen der Änmelderins PO 971 032
Funktionsspeicher aus assoziativen Zellen mit mehreren
Die Erfindung besieht sich auf Funktionsspeicher aus assoziativen bellen mit mehreren Zuständen, welche Zellen mit Signalen auf ihren Bitleitungen abgefragt werden und bei welchem Speicher nach dem Abfragen ein tibereinstimmungs- oder Nichtübereinstimmungs-Signal an die Wortleitung der Zelle gelegt wird»
Aus der US-PS 3 543 296 ist bereits ein Funktionsspeicher mit 4-Zustandszellen bekannt. Diese Zellen werden je von einer einzelnen binären Eingabe adressiert f die komplementiert und über eine Maske zum Abfragen der Zelle auf ihren übereinstimmungs- oder Wichtübereinstirnmungszustand auf die symmetrierten und entkoppelten Bitleitungen jeder Zelle übertragen wird. Mit dieser Anordnung eines Funktionsspeichers können, vier Informationszustände gespeichert werden, von denen drei in der assoziativen Speicherkonfiguration entschlüsselbar sind* Mit anderen Worten, bei dreien diesem Zustände kann beim Abfragen über die unmaskierten Bitleitungen des Speichers ein übereinstimmungszustand erreicht werden, während in dem vierten Zustand beim Abfragen keine Übereinstimmung möglich ist. Die drei entschlüsselbaren Zustände werden mit "0", "l" und "x" oder offen, bezeichnet« Der
309827/0722
vierte oder nichtentschlüsselbare Zustand trägt die Bezeichnung
Beim Abfragen der Zelle auf ihren Zustand werden logische Entscheidungen gefällt. Der Funktionsspeicher kann demnach logische Entscheidungen selbst fällen. Da jedoch durch die Konfiguration nur drei der vier logischen Zustände, d.h. der Schaltzustände der Zelle entschlüsselbar sind, gehen 25 % des logischen Leistungsvermögens der Anordnung verloren. Weiterhin können mit der Vier-Zustandsassoziativzellenanordnung nur sehr einfache logische Funktionen, im folgenden mit Schaltfunktionen bezeichnet, durchgeführt werden; zur Durchführung von Schaltfunktionen höherer Ordnung, wie z.B. Antivalenzfunktionen, sind am Ausgang des Speichers zusätzliche Logik und/oder im Speicher zusätzliche Worte erforderlich. ϊ
In der US-PS 3 59 3 317 werden zur Durchführung von Schaltfunktionen aufeinander bezogene Schaltungsanordnungen in Form einer kaskadenförmig zusammengeschalteten Vielzahl verallgemeinerter logischer, d.h. Schaltmatrizen benutzt, die wiederum aus einer Vielzahl von in Spalten und Zeilen angeordneten logischen Torgliedern mit ihren Hilfsschaltungen bestehen. Die Durchführung von Schaltfunktionen, insbesondere von solchen höherer Ordnung wie z.B. Antivalenzfunktionen, erfordert jedoch einen hohen Aufwand an Schaltungsmitteln.
Der Erfindung liegt die Aufgabe zugrunde, einen verbesserten und vereinfachten Funktionsspeicher der eingangs genannten Art zu erstellen, bei dem diese Nachteile nicht auftreten. Der erfindungsgemäße Speicher soll ein erhöhtes logisches Leistungsvermögen aufweisen.
Diese Aufgabe wird dadurch gelöst, daß ein Decodierer für die Decodierung von mindestens zwei binären Eingangssignalen und ihren Komplementen zur Erstellung eines Abfragesignais auf mehreren Leitungen vorgesehen ist, und daß eine Mehrfachzustandzelle mit
PO971032 309827/0722
einem Mehrfachen von zwei Zustandsstellungen vorgesehen ist, deren jede mit einer Bitleitung verbunden ist, die zum Empfang eines Abfragesignals des Decodierers mit einer der mehreren Leitungen gekoppelt ist, wobei die Mehrfachzustandszelle an eine einfache Wortleitung angeschlossen ist, an welche entsprechend jeder der Zustandsstellungen ein Übereinstimmungs- oder Nichtübereinstimmungs-Signal gelegt wird, wodurch mit den binären Eingangssignalen vermittels der Auswahl der in der Mehrfachzustandszelle gespeicherten Daten eine bestimmte Schaltfunktion durchgeführt wird.
Damit werden die Vorteile einer Verringerung der Zahl der nichtentschlüsselbaren Zustände des Speichers und damit eine Erhöhung seines logischen Leistungsvermögens erreicht. Weiterhin kann der Speicher Schaltfunktionen auch höherer Ordnung, wie z.B. Antivalenzfunktionen, ohne den Aufwand zusätzlicher logischer Schaltungsanordnungen durchführen. Schließlich weist der erfindungsgemäße Speicher in der Ausführung mit programmierbaren Decodierern, UND- und ODER-Matrixzellen und Verriegelungsschaltungen eine sehr hohe Flexibilität auf.
Die Erfindung wird anhand der Zeichnungen im einzelnen erläutert. Es zeigen:
Fig. 1 ein Beispiel eines Funktionsspeichers aus dem
Stand der Technik (US-PS 3 543 296),
Fig. 2 eine logische Auswertung des Zugriffs auf eine
einzelne Speicherzelle des in Fig. 1 dargestellten Speichers,
Fig. 3 eine echte Tabelle der möglichen Datenzustände
des Speichers der Fig. 1,
Fig. 4 eine echte Tabelle für einen Speicher gemäß
der Erfindung,
PO 971 032
309827/0722
Fig. 5 eine die echte Tabelle der Fig. 4 enthaltende
Speichermatrix,
Fig. 6 die Logik für den Zugriff auf eine der Mehrfach-
zustandszellen des Speichers der Fig. 5,
Fign. 7,8,9 die Anwendung einer Schwellenwertlogik auf die
Erfindung und
Fig. 10 mögliche Verbesserungen einer Schaltungsanordnung
für die in Fig. 4 dargestellte echte Tabelle zur weiteren Verstärkung der Logik des Funktionsspeichers .
In Fig. 1 stellt jeder Block 10 eine Vier-Zustandszelle der US-PS 3 543 296 dar. Auf jede dieser Zellen wird über eine Wortleitung 12 und zwei Bitleitungen 14 und 16 Zugriff ausgeübt. Beim assoziativen Abfragen der Daten jeder Zelle werden die entsprechenden Signale über eine Maske 18 und einen Komplementgenerator 20 an die Bitleitungen 14 und 16 gelegt. Das Abfragebit I wird in den Komplementgenerator 20 übertragen, welcher das Komplement des Bits T erstellt und das Bit I mit seinem Komplement ΐ in den Maskeneingang überträgt. Dann werden zwei Signale vom Maskenausgang an die linke und rechte Bitleitung 14 und 16 gelegt. Die Bitleitungen 14 und 16 sind die Abfühlleitungen. Die Signale auf den Bitleitungen 14 und 16 hängen natürlich davon ab, ob das Eingabebit I eine binäre "1" oder eine binäre "0" ist und weiterhin vom Zustand der Maske 18.
In Fig. 2 sind die möglichen Kombinationen der Maskenausgaben auf die Bitleitungen 14 und 16 für eine gegebene Eingabe I und die Maskenzustände wie auch das logische Äquivalent des Signalgenerators 18 und der Maske 20 dargestellt. Es sei z.B. angenommen, daß die Maskenschalter offen sind, oder, mit anderen Worten, der Maskeneingang M "0" ist. Die Ausgangssignale der Maske sind dann "0" und "0", da ohne Rücksicht auf die Datenein-
PO 971 032
309827/0722
gäbe I die UND-Bedingung für keinen der UND-Schaltungen erfüllt ist. Wenn jedoch das Maskensignal eine "1" ist, oder, mit anderen Worten, die Schalter in der Maske geschlossen sind, sind zwei unterschiedliche Bitleitungssignale möglich. Wenn erstens die binäre Eingabe I eine 11X)" ist, ist die Bedingung für die UND-Schaltung 19 erfüllt, und an die rechte Bitleitung 14 wird eine binäre "1" und an die linke Bitleitung 16 eine binäre "0" gelegt. Wenn zweitens die binäre Eingabe eine "1" ist, ist die Bedingung für die UND-Schaltung 21 erfüllt, und an die linke Bitleitung 16 wird eine binäre "1" und an die rechte Bitleitung 14 eine binäre "0" gelegt.
Die Bitleitungen werden demnach mit drei Signalkombinationen beaufschlagt, nämlich mit 11O", "0"; 11O", "1" und "1", 11O". Die Kombination "0", "0" stellt den Zustand dar, in welchem die ursprüngliche Abfrage durch die Maske M ausgefiltert ist. Die Kombination "0", "1" ist ein Zustand, in welchem die Speicherzelle auf eine "0" abgefragt wird. Die Kombination "1", 11O" ist eine Abfrage für eine binäre "1". Wenn die Abfrage gefiltert, oder, mit anderen Worten, die Zelle von der Kombination "0", "0" abgefragt wird, ist eine übereinstimmungsbedingung erfüllt und an die Wortleitung wird kein Impuls gelegt. Wenn jedoch die Zelle von einer der beiden anderen Kombinationen abgefragt wird, hängt die Ausgabe vom Inhalt der Speicherzelle ab. In der US-PS 3 543 296 besteht die Vier-Zustandszelle 10 aus zwei binären Flipflops, wobei jedes Flipflop mit einer der Bitleitungen 14 oder 16 gekoppelt ist. In der Sprache eines Funktionsspeichers heißt das, daß die Vier-Zustandszelle 10 sich dann in dem 11I"-Zustand befindet, wenn das mit der linken Bitleitung 16 verbundene Flipflop eine "0" und das mit der rechten Bitleitung 14 verbundene Flipflop eine I:l" speichert. Die Speicherzelle befindet sich in ihrem "O"-Zustand, wenn das mit der Bitleitung 16 verbundene Flipflop eine "1" und das mit der Bitleitung 14 verbundene Flipflop eine "0" speichert. Wenn keines der beiden Flipflops eine 11I" speichert, befindet sich das Flipflop in dem "X"-Zustand,
PO 9 71 032
309827/0 7 22
und wenn beide Flipflops eine "1" speichern, ist die Zelle in dem "Y"-Zustand.
Fig. 3 zeigt eine Echttabelle der Signalübereinstimmung M und Nichtübereinstimmung N auf der Wortleitung 12 für alle möglichen Kombinationen der Abfragesignale auf den Bitleitungen 14 und 16 und der in der Vier-Zustandezelie IO gespeicherten Datenzustände. Die Bitleitungsabfragesignale sind in den oberen Zeilen der Tabelle mit den sie erstellenden binären Eingaben und Haskenbedingungen enthalten. Die linken Spalten enthalten die in der Zelle gespeicherten Daten und die gebräuchlichen Funktionscodebezeichnungen für die verschiedenen Zustände.
Es ist ersichtlich, daß eine den "Y"-Zustand speichernde Zelle 10 kein Übereinstimmungssignal auf der Wortleitung 12 für irgendeine ungefilterte Kombination der Abfragesignale auf den Bitleitungen erstellen kann. Der "Y"-Zustand kann daher für irgendeine ungefilterte Kombination der Abfragesignale auf den Bitleitungen in dem Wort nur eine Nichtübereinstimmungsbedingung erstellen.
Es sei an die Bedeutung der vier möglichen Zustände der Zelle zur Kennzeichnung der vier Funktionen der Eingangsschaltvariablen I erinnert, d.h. I, T, ECHT und NICHT ZUTREFFEND (N.ZFD.). Daraus ist ersichtlich, daß jedes Wort des Funktionsspeichers Schaltfunktionen der einzelnen Eingangsschaltvariablen ausführt. Die von dem Speicher durchgeführte Logik geht jedoch mit den Speicherzuständen verschwenderisch um, da die Funktion NICHTZUTREFFEND nur begrenzt benutzt wird. Die von der Zelle ausgeführte Logik ist weiterhin elementar, da sie nur eine Funktion einer einzigen Variablen ist. In der vorliegenden Erfindung führt jede Zelle in der Matrix die Logik von zwei oder mehr Variablen aus.
Fig. 4 zeigt eine Echttabelle für die Durchführung der Logik mit zwei Variablen in einer Funktionsspeicherzelle. Auf der rechten Seite der Tabelle befinden sich fünf Spalten. Die beiden ersten Zeilen davon sind die binären Eingänge Il und 12. Die dritte
PO 971 032
309827/0722
Zeile stellt den Zustand der Maske dar, und in den Zeilen 4 bis 7 sind die Ausgänge eines Decodierers aufgezeichnet, welcher seine Eingänge Il und 12, ihre Komplemente ΪΤ und Ϊ2* und den Zustand M der Maskenschaltung decodiert. Sechzehn Zeilen der Tabelle enthalten in vier Spalten Ll, Rl, L2 und R2 binäre Ziffern. Diese sechzehn Zeilen enthalten alle möglichen Kombina*- tiönen der in zwei Vier-Zustandszellen der vorerwähnten US-PS 3 543 296 gespeicherten Daten. Die Spalte LOGISCHE SCHREIBWEISE gibt die Logik an, die von den beiden Vier-Zustandszellen mit' den Eingangssignalen Il und 12 dann durchgeführt wird, wenn die Ausgangssignale des Decodierers so an die Bitleitungen des Speichers gelegt werden, wie es die linke Spalte der Tabelle anzeigt, welche jeden Decodiererausgang darstellt. Der mit M und N gekennzeichnete Teil der Tabelle gibt an, ob an der mit der Speicherzelle verbundenen Wortleitung ein Signal ÜBEREINSTIMMUNG oder NICHTÜBEREINSTIMMUNG liegt.
Es gibt daher sechzehn mögliche Schaltfunktionen, die ausgeführt werden können, wenn das Suchen einer Spalte von Zellen eine Funktion von zwei Variablen ist, unter denen sich auch eine Antivalenzfunktion befindet. Nur eine dieser logischen Punktionen (NICHTZUTREFFEND, N.ZFD.) wird in der assoziativen Speicheranordnung selten benutzt, da nur diese eine Funktion einen Nichtübereinstimmungs-Zustand ergibt, ohne Rücksicht auf die bei einem ungefilterten Zustand auf die Eingangsleitungen Il und 12 übertragenen Daten.
Die Anwendung der in Fig. 4 dargelegten Logik erfordert eine Sechzehn-Zustandszelle. Diese Sechzehn-Zustandszelle kann gemäß der vorerwähnten US-PS 3 543 296 eine einzelne Sechzehn-Zustandszelle sein, oder aus vier Zwei-Zustandszellen oder zwei Vier-Zustandszellen bestehen. Gemäß Fig. 6 ergeben die vier UND-Glieder der Maske Ml eine Decodierschaltung, welche die UND-Verknüpfung aller vier möglichen Kombinationen der beiden Eingänge Ϊ1 und mit ihren Komplementen darstellt. . - :
PO 971 032
309827/07 22
Fig. 5 zeigt eine erfindungsgemäße Matrix der Zellen. Jede Zelle 22 besteht aus zwei Vier-Zustandszellen, auf die von einer Wortleitung 26 und vier Bitleitungen 28 bis 34 Zugriff ausgeübt wird. Die Masken 36 werden nun zu Zwei-Bitdecodierern, die alle möglichen Kombinationen von zwei Eingängen Il und 12 und ihren Komplementen ΪΤ und 12 UND-verknüpfen. So werden beispielsweise die Vier-Zustandszellen 24a und 24b tatsächlich zu einer Sechzehn-Zustandezelle, auf die von einem Decodierer 36a Zugriff ausgeübt wird, der einen einzelnen Impuls oder eine Eingabe für jeden der von den verschiedenen Kombinationen der Eingänge Il und 12 und ihrer Komplemente IT und 12 bereitgestellten Abfragezustände erstellt.
Seither wurde die Anwendung der Erfindung auf einen Funktionsspeicher mit einem Zwei-Bitdecodierer begrenzt. Es können jedoch auch Drei- oder Mehr-Bitdecodierer benutzt werden. Ein Drei-Bitdecodierer hat acht Ausgangsleitungen. Der Drei-Bitdecodierer überträgt demnach Abfragesignale zu acht Zwei-Zustandsspeicherzellen oder vier Vier-Zustandsspeicherzellen oder zwei Sechzehn-Zustandszellen zur Bildung einer 256-Zustandszelle. Das Ein- und Auslesen der erfindungsgemäßen Funktionsspeicher kann konventionell unter Benutzung der in der vorerwähnten US-PS 3 543 296 beschriebenen Technik erfolgen.
Bis jetzt wurden Decodierer mit herkömmlicher Logik beschrieben. In einigen Fällen kann es jedoch wirksamer sein, Decodierer zu verwenden, die zur Verringerung der für die Durchführung bestimmter Schaltfunktionen benötigten Anzahl von Zellen Schwellenwertlogik benutzen. Mit einem Schwellenwertlogikdecodierer sind mehrere Kombinationen von Eingaben und Ausgaben möglich. Es werde beispielsweise ein Vier-Bitschwellenwertdecodierer benutzt. Wenn den vier Leitungen gleiches Gewicht beigemessen wird, ist es, wie in Fig. 7 dargestellt, möglich, bis zu fünf Ausgaben zu decodieren, wobei eine Ausgabe das Vorhandensein aller vier Eingaben, eine Ausgabe das Vorhandensein von genau drei Ausgaben, eine Ausgabe des Vorhandensein von genau zwei Eingaben, eine Ausgabe das Vorhandensein von genau einer Eingabe und eine Ausgabe das Vorhan-
PO 9 71 032
309827/0722
densein keiner Eingabe anzeigen. Die fünf Ausgaben werden mit dem Zustand einer 32-Zustandszelle verglichen, die, wie darge« stellt, mit fünf bistabilen Elementen verwirklicht werden kann. Jede der 32 Kombinationen der fünf bistabilen Elemente stellt eine der 32 Funktionen der vier gleichgewichteten Eingaben dar.
Nicht alle Decodiererausgaben sind jedoch immer unabhängig verwendbar. Fig. 8 zeigt den Fall, wo von den vier gleichgewichteten Eingaben nur drei decodierte Ausgaben verwendbar sind, wobei eine Ausgabe das Vorhandensein von mehr als zwei Eingaben, eine Ausgabe das Vorhandensein von genau zwei Eingaben und eine Ausgabe das Vorhandensein von weniger als zwei Eingaben anzeigen. Die drei Ausgaben werden nun mit dem Zustand einer Acht-Zustandszelle verglichen, die, wie gezeigt, mit drei bistabilen Elementen verwirklicht werden kann. Jede der acht Kombinationen der drei bistabilen Elemente stellt aus der begrenzten »Gruppe eine der acht zulässigen Funktionen der vier gleichgewichteten Eingaben dar.
Zur Darstellung von Schwellwertbedingungen brauchen nicht alle Eingaben gleiches Gewicht zu haben. Beispielsweise können zwei Eingaben des Gewicht eins und die beiden anderen Eingaben das Gewicht zwei haben. Wie in Fig. 9 dargestellt, hat im Extremfall jede der vier Eingaben ein unterschiedliches Gewicht, welches auf der Basis der Größe oder des Gewichtes zweier aufeinanderfolgender ganzer Zahlen, nämlich 1,2,4 und 8, zugeordnet ist. Dann sind für die Decodierung der vier Eingaben bis zu 16 unterschiedliche Ausgaben notwendig, oder, mit anderen Worten, so viele, wie im Falle eines Decodierers aus konventioneller Logik erforderlich wären.
Bisher wurde davon ausgegangen, daß alle Bitdecodierer die gleiche Größe haben. Dieses braucht jedoch natürlich nicht der Fall zu sein. Gemäß Fig. 10 können alle möglichen Kombinationen von Decodierergrößen zur Durchführung der Logik benutzt werden, die für die minimale Anzahl von Zellen notwendig ist.
PO 971 032
309827/0722
Weiterhin stellen die Ausgaben der Speichermatrix nicht nur die übereinstimmungs-ZNichtübereinstimmungsbeziehungen zwischen den Eingaben und den gespeicherten Funktionen der Matrix dar, sondern auch die Ausgaben einer Reihe von UND-Funktionen. Jede UND-Funktion stellt wiederum das UND-Glied der Funktionen der Untergruppen dar. In dem vorliegenden Beispiel ist jede Ausgabe der UND-Matrix das UND-Glied einer Funktion der vier Eingabeuntergruppen, nämlich der ersten aus II, 12 und 13 bestehenden Eingabeuntergruppe, der zweiten aus 14 und 15 bestehenden Eingabeuntergruppe, der dritten aus 16 bestehenden Eingabeuntergruppe und der vierten aus 17 bestehenden Eingabeuntergruppe. Für weitere logische Schritte kann die UND-Ausgabe mit einer zusätzlichen Speichermatrix aus einer Reihe von ODER-Gliedern verbunden werden. Jedes ODER-Glied führt die ODER-Funktion ausgewählter Ausgaben der UND-Matrix durch. Die Ausgaben der UND-Matrix werden ausgewählt oder nicht ausgewählt, abhängig von dem Zustand 1 oder O einer in dem Kreuzungspunkt einer UND-Matrixausgabe mit einem ODER-Glied befindlichen Zwei-Zustandszelle. Die Ausgaben der ODER-Matrix können weiterhin noch zur Durchführung noch zusätzlicher logischer Funktionen in eine Anordnung entsprechend getakteter Verriegelungsschaltungen übertragen werden. In dieser Verriegelungsschaltung wird jede ODER-Matrixausgabe entweder verriegelt oder nicht verriegelt, die Auswahl einiger oder aller kann wiederum von einer Zwei-Zustandszelle vorgenommen werden, die sich an der der entsprechenden ODER-Matrix zugeordneten Verriegelungsschaltung befindet. Die größte Flexibilität wird dann erreicht, wenn die Decodierer, die UND-Matrixzellen, die ODER-Matrixzellen und die Verrxegelungsschaltungen programmierbar sind.
Da vorgeschlagen wird, den erfindungsgemäßen Speicher in monolithischer Technik auf einem einzelnen monolithischen Chip zu ersteilen, sind schließlich einige Eingabe- und Ausgabestifte für vielseitige Verbindungsmöglichkeiten wünschenswert. Es ist daher vorteilhaft, die Verbindungen derart auf einen Stift 40 auszulesen, daß dieser entweder mit einem Eingang 41 oder einem Ausgang 42 des Chips verbunden werden kann.
PO 9 71 032
309827/0722

Claims (10)

  1. PATENTANSPRÜCHE lJ Funktionsspeicher aus assoziativen Zellen mit mehreren
    Zuständen, welche Zellen mit Signalen auf ihren Bitleitungen abgefragt werden, und bei welchem Speicher nach dem Abfragen ein übereinstimmungs- oder Nichtübereinstimmungssignal an die Wortleitung der Zelle gelegt wird, dadurch gekennzeichnet, daß ein Decodierer (20) für die Decodierung von mindestens zwei binären Eingangssignalen und ihren Komplementen zur Erstellung eines Abfragesignals auf mehreren Leitungen vorgesehen ist, und daß eine Mehrfachzustandszelle (10) mit einem Mehrfachen von zwei Zustandsstellungen vorgesehen ist, deren jede mit einer Bitleitung (14, 16) verbunden ist, die zum Empfang eines Abfragesignals des Decodierers (20) mit einer der mehreren Leitungen gekoppelt ist, wobei die Mehrfachzustandszelie (10) an eine einzelne Wortleitung (12) angeschlossen ist, an welche entsprechend jeder der Zustandsstellungen ein Übereinstimmungs- oder Nichtübereinstimmungssignal gelegt . wird, wodurch mit den binären EingangsSignalen vermittels der Auswahl der in der Mehrfachzustandszelie (10) gespeicherten Daten eine bestimmte Schaltfunktion durchgeführt wird.
  2. 2. Funktionsspeicher nach Anspruch 1, dadurch gekennzeichnet, daß der Decodierer (20) so ausgelegt ist« daß η Eingänge auf einen von 2n Ausgänge decodiert werden.
  3. 3. Funktionsspeicher nach Anspruch 1, dadurch gekennzeichnet, daß für jede der Zustandsstellungen der Mehrfachzustandszelie (10) eine bistabile Schaltungsanordnung vorgesehen ist.
  4. 4. Funktionsspeicher nach Anspruch 1, dadurch gekennzeichnet, daß für je zwei Zustandsstellungen der Mehrfachztastandszelle (10) eine Vier-Zustands-Schaltungsanordnuag
    po 971 032 309 827/07 22
    vorgesehen ist.
  5. 5. Funktionsspeicher nach Anspruch 1, dadurch gekennzeichnet, daß der Decodierer (20) als Schwellenwertdecodierer ausgebildet ist.
  6. 6. Funktionsspeicher nach Anspruch 5, dadurch gekennzeichnet, daß allen Eingängen des Uecodierers (20) gleiches Wertungsgewicht beigemessen ist.
  7. 7. Funktionsspeicher nach Anspruch 5, dadurch gekennzeichnet, daß mindestens einem der Eingänge des Decodierers (20) ein gegenüber den restlichen Eingängen verschiedenes Wertungsgewicht beigemessen ist.
  8. 8. Funktionsspeicher nach Anspruch 1, dadurch gekennzeichnet, daß an jede Wortleitung mehrere Eingänge von ODER-Gliedern (Fig. 10) angeschlossen sind, welche zur Durchführung von Schaltfunktionen an den Ausgängen der Speicherzellen mit der Wortleitung selektiv verbunden oder davon getrennt werden und welche mit mit anderen Wortleitungen der Matrix verbundenen weiteren Eingängen dieser ODER-Glieder so zusammengeschaltet sind, daß sie eine Matrix aus programmierbaren ODER-Gliedern bilden.
  9. 9. Funktionsspeicher nach Anspruch 8, dadurch gekennzeichnet, daß an jede von mindestens einigen der Ausgangsleitungen der ODER-Glieder (Fig. 10) eine Verriegelungsschaltung (Fig. 10) angeschlossen ist, die zur Bildung einer Matrix programmierbarer Verriegelungsschaltungen selektiv mit dieser Ausgangsleitung verbunden oder davon getrennt wird.
  10. 10. Funktionsspeicher nach Anspruch 1 bis 9, dadurch gekennzeichnet, daß der Speicher in monolithischer Technik hergestellt ist.
    PO 9 71 032
    309827/0722
    Leerseite
DE2259725A 1971-12-30 1972-12-06 Funktionsspeicher aus assoziativen Zellen mit mindestens vier Zuständen Expired DE2259725C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US21419571A 1971-12-30 1971-12-30

Publications (3)

Publication Number Publication Date
DE2259725A1 true DE2259725A1 (de) 1973-07-05
DE2259725B2 DE2259725B2 (de) 1981-03-19
DE2259725C3 DE2259725C3 (de) 1981-12-10

Family

ID=22798158

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2259725A Expired DE2259725C3 (de) 1971-12-30 1972-12-06 Funktionsspeicher aus assoziativen Zellen mit mindestens vier Zuständen

Country Status (5)

Country Link
US (1) US3761902A (de)
JP (1) JPS5443853B2 (de)
DE (1) DE2259725C3 (de)
FR (1) FR2166231B1 (de)
GB (1) GB1360585A (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3913075A (en) * 1972-11-21 1975-10-14 Vitaliev Georgy Associative memory
US3924243A (en) * 1974-08-06 1975-12-02 Ibm Cross-field-partitioning in array logic modules
DE2455178C2 (de) * 1974-11-21 1982-12-23 Siemens AG, 1000 Berlin und 8000 München Integrierte, programmierbare Logikanordnung
US3958110A (en) * 1974-12-18 1976-05-18 Ibm Corporation Logic array with testing circuitry
US3936812A (en) * 1974-12-30 1976-02-03 Ibm Corporation Segmented parallel rail paths for input/output signals
US3987287A (en) * 1974-12-30 1976-10-19 International Business Machines Corporation High density logic array
US3975623A (en) * 1974-12-30 1976-08-17 Ibm Corporation Logic array with multiple readout tables
US3993919A (en) * 1975-06-27 1976-11-23 Ibm Corporation Programmable latch and other circuits for logic arrays
US4029970A (en) * 1975-11-06 1977-06-14 Ibm Corporation Changeable decoder structure for a folded logic array
GB1513586A (en) * 1975-11-21 1978-06-07 Ferranti Ltd Data processing
US4390962A (en) * 1980-03-25 1983-06-28 The Regents Of The University Of California Latched multivalued full adder
DE3105503A1 (de) * 1981-02-14 1982-09-02 Brown, Boveri & Cie Ag, 6800 Mannheim Assoziativer zugriffsspeicher
US4506341A (en) * 1982-06-10 1985-03-19 International Business Machines Corporation Interlaced programmable logic array having shared elements
US4500800A (en) * 1982-08-30 1985-02-19 International Business Machines Corporation Logic performing cell for use in array structures
US4972338A (en) * 1985-06-13 1990-11-20 Intel Corporation Memory management for microprocessor system
GB2176918B (en) * 1985-06-13 1989-11-01 Intel Corp Memory management for microprocessor system
US5195056A (en) * 1987-05-21 1993-03-16 Texas Instruments, Incorporated Read/write memory having an on-chip input data register, having pointer circuits between a serial data register and input/output buffer circuits
US4817058A (en) * 1987-05-21 1989-03-28 Texas Instruments Incorporated Multiple input/output read/write memory having a multiple-cycle write mask
US5319590A (en) * 1992-12-04 1994-06-07 Hal Computer Systems, Inc. Apparatus for storing "Don't Care" in a content addressable memory cell
US5568415A (en) * 1993-02-19 1996-10-22 Digital Equipment Corporation Content addressable memory having a pair of memory cells storing don't care states for address translation
US5996097A (en) * 1997-04-28 1999-11-30 International Business Machines Corporation Testing logic associated with numerous memory cells in the word or bit dimension in parallel
US6856527B1 (en) 2003-05-30 2005-02-15 Netlogic Microsystems, Inc. Multi-compare content addressable memory cell
US6842360B1 (en) 2003-05-30 2005-01-11 Netlogic Microsystems, Inc. High-density content addressable memory cell
US7174419B1 (en) 2003-05-30 2007-02-06 Netlogic Microsystems, Inc Content addressable memory device with source-selecting data translator

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3543296A (en) * 1967-09-05 1970-11-24 Ibm Data storage cell for multi-stable associative memory system
CH500555A (de) * 1968-07-15 1970-12-15 Ibm Assoziativspeicher
US3593317A (en) * 1969-12-30 1971-07-13 Ibm Partitioning logic operations in a generalized matrix system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3609702A (en) * 1967-10-05 1971-09-28 Ibm Associative memory

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3543296A (en) * 1967-09-05 1970-11-24 Ibm Data storage cell for multi-stable associative memory system
CH500555A (de) * 1968-07-15 1970-12-15 Ibm Assoziativspeicher
US3593317A (en) * 1969-12-30 1971-07-13 Ibm Partitioning logic operations in a generalized matrix system

Also Published As

Publication number Publication date
GB1360585A (en) 1974-07-17
US3761902A (en) 1973-09-25
DE2259725C3 (de) 1981-12-10
JPS5443853B2 (de) 1979-12-22
DE2259725B2 (de) 1981-03-19
FR2166231B1 (de) 1976-08-27
FR2166231A1 (de) 1973-08-10
JPS4879548A (de) 1973-10-25

Similar Documents

Publication Publication Date Title
DE2259725C3 (de) Funktionsspeicher aus assoziativen Zellen mit mindestens vier Zuständen
DE68923541T2 (de) Programmierbare Logikeinrichtung mit einer Vielzahl von programmierbaren Logikarrays, die sich in mosaikförmiger Anordnung zusammen mit einer Vielzahl von vermischt angeordneten Interface-Blöcken befinden.
DE3132225C2 (de) Einrichtung für die Adressierung gespeicherter Ergebniswerte bei einer schnellen Hadamard-Transformation
DE2324731A1 (de) Festzustandsspeicher fuer mehrdimensionalen zugriff
DE1963895B2 (de) Datenspeicher- und datenspeicheransteuerschaltung
DE2725395B2 (de) Einrichtung zur Echtzeittransformation von m in Zeilen angeordneten Wörtern der Bitlänge n in n in Spalten angeordnete Wörter der Bitlänge n
DE2347387A1 (de) Permutationsschaltung
DE2556273A1 (de) Gruppenweise zu einer logischen schaltung zusammengefasste logische schaltkreise
DE2423265C3 (de) Optimierende Rechenmaschine
DE68927527T2 (de) Bedrahtete Datensortierschaltung
DE2527062A1 (de) Anpassungsfaehiger adressendecodierer
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE2940653A1 (de) Programmierbare logische anordnung
DE1524898C3 (de) Datenspeicher mit direktem mehrdimensionalen Zugriff zur gleichzeitigen Entnahme mehrerer Wörter
DE69122860T2 (de) Multiplexer
DE2357654C2 (de) Assoziativspeicher
DE2428040A1 (de) Codierschaltung
DE2648225A1 (de) Datenspeicherwerk mit mehreren speichermodulen
DE2121490A1 (de) Orthogonaler Datenspeicher
DE2022256C2 (de) Festwertspeicher- und Decoderanordnung
DE2309029C2 (de) Elektronische Digital-Datenverarbeitungs-Anlage mit Mikroprogrammsteuerung
DE1956460A1 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE69206604T2 (de) Schnelle Addierkette.
DE2649147C2 (de) Anordnung zum wahlweisen Durchführen von logischen und arithmetischen Operationen
DE1808159A1 (de) Einrichtung zur Umwandlung von Dualzahlen in binaer codierte Dezimalzahlen in paralleler Darstellung

Legal Events

Date Code Title Description
OD Request for examination
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee