DE1499696A1 - Assoziativer Speicher - Google Patents

Assoziativer Speicher

Info

Publication number
DE1499696A1
DE1499696A1 DE19661499696 DE1499696A DE1499696A1 DE 1499696 A1 DE1499696 A1 DE 1499696A1 DE 19661499696 DE19661499696 DE 19661499696 DE 1499696 A DE1499696 A DE 1499696A DE 1499696 A1 DE1499696 A1 DE 1499696A1
Authority
DE
Germany
Prior art keywords
memory
binary
stored
words
stage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE19661499696
Other languages
English (en)
Inventor
Daniel Cohen
Dejean Jacques Henri
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 Standard Electric Corp
Original Assignee
International Standard Electric 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 Standard Electric Corp filed Critical International Standard Electric Corp
Publication of DE1499696A1 publication Critical patent/DE1499696A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/085Error detection or correction by redundancy in data representation, e.g. by using checking codes using codes with inherent redundancy, e.g. n-out-of-m codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4091Sense or sense/refresh amplifiers, or associated sense circuitry, e.g. for coupled bit-line precharging, equalising or isolating

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Complex Calculations (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

Dipl.-Ing. Heinz Ciaessen
Patentanwalt Λ . _ _ _
7 Stuttgart 1 - I4 9 9 Q $ Q
Rotebühlstr. 70
ISE/Reg. 3429
D.Cohen-J.H.Dejean 4-10
INIERNM1IOSTAL STANDARD ELECl1RIC CORPORATION,!^ XORK
Assoziativer Speicher
Die Priorität der Anmeldung Fr. PV 22 346 vom 25.6.1965 in Frankreich wird in Anspruch genommen.
Die Erfindung "betrifft einen assoziativen Speicher für n-stellige Binärwörter mit vorgegebener kleiner Fehlerwahrscheinlichkeit bei der Ermittlung, ob ein Abfragewort in einem vorgegebenen Vorrat von V7örtern enthalten ist oder nicht.
Bei den bekannten Speichern, z.B. bei Kernspeiehern, wird jedes Bit in einer bestimmten Speicherzelle gespeichert, so daß der Ausfall der Speicherzelle den Verlust der dort gespeicherten Information bedeutet. Soll die Zuverlässigkeit eines solchen Speichers erhöht werden, so kann man die Anzahl der Speicherzellen erhöhen und ein Bit in mehreren Speicherzellen abspeichern. Dabei ist aber der Zusammenhang zwischen Erhöhung der Zuverlässigkeit und Aufwand im allgemeinen nichtlinear.
Mit der Erfindung soll ein einfacher assoziativer Speicher angegeben werden, der gegenüber anderen assoziativen Speichern weniger aufwendig ist und bei dem Zuverlässigkeit und Aufwand wählbar sind.
Zum Verständnis der Erfindung wird eine Anwendungsmöglichkeit des neuen Speichers geschildert. Um die Lagerüberwachung einer
Ne/Sd
15.6.66
-2-909849/1120 BAD ORIGINAL
2 U99696
Fabrik oder dgl. mit einem Rechner zu ermöglichen, sind die Waren, Rohstoffe, Halbzeuge und dgl. nach ihrer Länge, Breite, Dicke", * Werkstoff usw. gekennzeichnet, wobei für jedes Merkmal mehrere * Codestellen vorgesehen sind. Die Stellenzahl hängt dabei von den möglichen Varianten des Codes ab. Für alle zu erfassenden Teile ergibt sich danndein n-stelliges Binärwort, mit dem alle Möglichkeiten erfaßt werden können. Wegen der erwähnten Zuordnung sind sicher nicht alle Oodestellen bei allen Teilen belegt und die Anzahl der zu überwachenden Teile ist kleiner als 2n. Die Anzahl der Teile ist zu einem bestimmten Zeitpunkt ^^<2Ά. Es soll nun schnell festgestellt werden, ob ein Teil mit einem bestimmten Binärwort am Lager ist oder nicht.
Zur Lösung dieser Aufgabe kann man die ρ Binärwörter der ρ Teile in einem Speicher mit ρ Zeilen zu je η Bit abspeichern und dann das Binärwort des gesuchten Teils mit allen gespeicherten Binärwörtern vergleichen. Dies ist aber zeitraubend und beim Ausfall eines Speicherelementes ergeben sich Fehler.
Der neue Speicher ist für die Aufgabe besser geeignet.
Die Erfindung ist dadurch gekennzeichnet, daß die n-stelligen Binärwörter zuerst in einem ersten Zuordner in einen (2 )-Code und anschließend in einem zweiten Zuordner in einen (V)-Code umgewandelt werden und daß die Ausgangssignale dieses zweiten Zuordners zur Ansteuerung von k von insgesamt Έ mehrwertigen Speicherelementen dienen, in die beim Schreiben die Binärwörter überlagernd derart eingeschrieben werden, daß in jedem Speicherelement die Summe der beim Schreiben aller Wörter auftretenden 1-Markierungen für dieses Speicherelement gebildet wird, wobei jedoch nur eine gegenüber der möglichen Anzahl sehr kleine Anzahl ρ von Binärwörtern (p<^ 2n) eingespeichert wird und daß beim Lesen des Speichers das Abfragewort wie beim Schreiben eingegeben wird und die Summe der gespeicherten Werte derjenigen Speicherelemente gebildet wird, für die das Abfragewort eine binäre 1 aufweist und daß die so gewonnene Summe zur Feststellung, ob es sich um ein gespeichertes Wort handelt oder nicht, mit einem Schwellwert verglichen wird, der aus den Werten für H, k und ρ und der Fehlerwahrscheinlichkeit aus einer Gauß1sehen Kurve ermittelt wurde.
;909849/1120
BAD ORIGINAL
U99696
ISE/Reg. 3429 - 3 -
Die Erfindung wird nun anhand der Figuren beispielsweise näher erläutert. Es zeigen:
Fig. 1 ein Ausführungsbeispiel mit einem Kondensatorspeicher,
Fig. 2 ein Ausführungsbeispiel mit einem Magnettrommel-Speicher ,
Fig. 3 die bei der Erfindung verwendeten Wahrscheinlichkeit skurven .
Der in Fig. 1 gezeigte Speicher enthält N Kondensatoren, beispielsweise viertausend. Die einzelnen Zellen des Speichers, von denen Jede einen Kondensator und die dazugehörigen Stromkreise enthält, sind mit 01, C2...0N. bezeichnet. Da die Speicherzellen untereinander gleich sind, ist nur die Zelle 01 ausführlich dargestellt. Diese Zelle 01 enthält einen Kondensator 20, dessen eine Elektrode an Erde liegt, während die andere Klemme mit dem Ausgang eines Stromimpulsgenerators 16 und mit dem Eingang einer Stufe 18 verbunden ist. Der Stromimpulsgenerator 16 ist im Ruhezustand gesperrt und er liefert einen konstanten Strom, der den Kondensator 20 nur dann lädt, wenn positive Signale an den beiden Eingängen der UND-Schaltung .15 gleichzeitig anliegen; einer der Eingänge der UND-Schaltung 15 ist mit dem Ausgang 1 einer Stufe 13 verbunden, die N Ausgänge aufweist; die N-1 anderen Ausgänge der Stufe 13, die mit 2 bis N bezeichnet sind, sind mit den Speicherzellen bis GN verbunden; der andere Eingang der UND-Schaltung 15 ist mit einer Stufe -11 verbunden, die die zu speichernde Binärinformation, d.h. eine 0 oder 1,abhängig von der Adresse im n-stelligen Register 19,das die Stufe 13 steuert, liefert. Es ist festgelegt, daß eine binäre 1 einem positiven Signal entspricht, während eine binäre 0 kein Signal zur Folge hat,
9849/1120
U99696
ISE/Reg. 3-4-29 - 4 -
d.h. der Draht, auf dem eine "binäre O auftritt, hat Erdpotential; es ist außerdem festgelegt, daß eine der N-Ausgangsleitungen der Stufe 13 "markiert" ist, wenn sie ein positives Signal führt und daß sie im nicht markierten Zustand Erdpotential aufweist. In der Fig. 1 ist die Stufe 11 sehematisch durch einen Umsclialter dargestellt, mit dem entweder ein positives Signal (Stellung 1) entsprechend der "binären 1 oder Erdpotential (Stellung 0) für die binäre 0 auf die nicht "bezeichnete Leitung gegeben werden kann; die mit 0 bezeichnete Stellung ist die Ruhestellung; das positive Signal liefert ein Spannungsgenerator V. Das Lesesignal wird von einer Stufe geliefert, die ähnlich wie die Stufe 11 sehematisch durch einen Umschalter dargestellt ist, der entweder ein positives Signal (Stellung 1) entsprechend dem Lesesteuersignal L oder Erdpotential (Stellung 0) an die nicht bezeichnete Leitung zur Torschaltung 17 liefert. Ist Erdpotential auf dieser Leitung vorhanden, dann sind die UND-Schaltungen 17 gesperrt. Beim Schreiben wird eins Adresse vom Register 19 und eine binäre 1 bzw. 0 entsprechend dem zu speichernden Bit zur Steuerung der Stufe 11 zum Speicher gegeben. Beim Lesen wird die Adresse der Information, die gelesen werden soll - ein Code, der im Register 19 gespeichert ist - und ein Lesebefehl, der den Schalter der Stufe 9 steuert, zum Speicher gegeben. Diese Informationen und diese Befehle gelangen zum Speicher über die Stufe 2A-, die nicht zum Speicher gehört und die deshalb nicht näher erläutert wird. Es wird vorausgesetzt, daß die Stufen so ausgelegt sind, daß zur Lesezeit sich der Schalter der Stufe 11 in der Stellung 0 befindet und daß sich zur Schreibzeit der Schalter der Stufe 9 in der Stellung 0 befindet.
Die Stufe 18 ist so ausgelegt, daß sie immer, d.h. im geöffneten oder im gesperrten Zustand,eine große Eingangsimpedanz aufweist, so daß der Kondensator 20 nicht entladen wird. Beim
909849/1120
Lesen der ^elle 01 wird die Stufe 18 entsperrt und liefert einen Strom oder eine Spannung proportional der Ladung des Kondensators 20, die dieser während des Schreibens aufge-'nommen hat. Die Stufe 18 wird von einer !MD-Schaltung 17 gesteuert. Auf einen Eingang der UND-Schaltung 17 gelangt der Lesebefehl L und auf den anderen das Signal von der Ausgangsleitung 1 der Stufe 13» wenn es sich um die Speicherzelle 01 handelt.
Vor Beginn des Schreibens werden alle Kondensatoren durch nicht gezeigte Mittel entladen.
Auf das Register 19 gelangen Worte im n-stelligen Binärcode. Die Decodierstufe 12 liefert bei jedem Eingangscode ein Signal an einem ihrer Ausgänge, d.h. es handelt sich um einen eins aus 2n Godwandler. Von der Stufe 12 bis zur Stufe 13 führen, wie in der Fig. 1 angedeutet, 2 -Leitungen. Die logische Stufe 13» eine Godierstufe, markiert k der insgesamt N-Ausgangsleitungen, d.h. am Ausgang der Oodierstufe 13 treten
TVT
die Informationen im (, )-Code auf. Im Ausführungsbeispiel ist k = 300. Die Stufe 13 kann ein an sich bekannter Diodenzuordner sein, bei dem jeder der 2n-Eingänge mit k-Ausgängen über k Koppeldioden verbunden ist. Beim Schreiben gelangt auf jeden gemäß der Adresse ausgewählten Kondensator eine Einheitsladung. Diese Einheitsladung addiert sich zur Summe der vorhergegangenen Ladungen, die der Kondensator beim Schreiben anderer Binärwerte 1 aufgenommen hat. Beim Schreiben einer binären 0 wird die Ladung der Kondensatoren nicht verändert. Man sieht ohne weiteres, daß die Anzahl der bei einem (, )-Gode möglichen Kombinationen sehr hoch ist; z.B. liegt die Anzahl in der Größenordnung von 10 ^ bei N = 4 000 und k = 300. Es werden jedoch erfindungsgemäß nur eine kleine Anzahl der möglichen Kombinationen verwendet, wobei diese Zahl sehr klein gegen 2n ist und es wird außerdem angenommen, daß von dieser Anzahl
■ -6-BAD ORIGINAL
909849/1120
H9-9696
ISE/Reg. 34-29 - 6 -
nur ρ dem Schreiben einer binären 1 entsprechen, wobei diese* ' p--Kombinationen zufallsbedingt unter den 211 möglichen Kombinationen verteilt werden. Diese 2 -Kombinationen werden andererseits zufallsbedingt unter den (, ) möglichen Kombinationen verteilt. In einem Speicher gemäß der Erfindung mit N = 4000 Kondensatoren und ρ = 150 Binärwörtern (d.h. die Anzahl der Leitungen zwischen den Stufen 12 und 13 ist ρ ) wird jedes Binärwort, d.h. eine auf den Leitungen zwischen den Stufen 12 und auftretende binäre 1 in k = 300 Kondensatoren abgespeichert. Beim Schreiben in den Speicher ist der Lesebefehl L nicht vorhanden, da die Stufe 9 sich in der Stellung 0 befindet und die UND-Schaltungen 17 der verschiedenen Speicherzellen sind gesperrt, so daß die Stufe 18 ebenfalls gesperrt ist. Bei einem bestimmten Codewort im Register 19 werden k aus N-Ausgangsleitungen der Stufe 13 markiert und geben das Markierungssignal an die k entsprechenden UND-Stufen 15 weiter. Wenn das zu speichernde Bit eine 1 ist, liefern die k UND-Schaltungen ein Signal zum Entsperren des zugeordneten Generators 16. Der Generator 16 liefert dann einen konstanten Stromimpuls, der den Kondensator 20 definiert auflädt. Um die gleiche Einheitsladung für alle Speicherzellen zu erhalten, müssen die Generatoren 16 untereinander gleich sein und die Ladedauer, d.h. die Zeit, während der die Generatoren 16 entsperrt sind, muß für jede Zelle gleich sein. Man kann die Anordnung z.B. so auslegen, daß der Impuls von der Stufe 11 langer dauert als der Impuls von der Stufe 13, so daß die Einspeicherzeit von der Stufe 13 allein bestimmt wird. Auf diese Weise erreicht man auch, daß die Einspeicherzeit für alle Stufen gleich wird.
Ist das zu speichernde Bit eine 0, dann liefern die UND-■ Stufen 15 kein Entsperrsignal und die Kondensatoren werden nicht geladen.
909849/1120 BAD ORIGINAL
ISE/Reg. 3429 - 7 -
Der Block, der mit 10 bezeichnet ist, ist ein Taktgenerator, der die für den Betrieb des Speichers notwendigen Taktsignale liefert.
Nachdem die ρ = 150 Binärwörter, wie oben beschrieben, gespeichert wurden, können sie anschließend gelesen werden, wie nun beschrieben wird.
Beim Lesen sind die verschiedenen IMD-Stufen 15 sowie die zugeordneten Generatoren 16 gesperrt, da die Stufe 11 Erdpotential abgibt.Andererseits geben die UND-Stufen 17 ein Signal zum Entsperren der zugeordneten Stufen 18, wenn die Ausgangsleitungen der Stufe*13 markiert sind. Der Lesebefehl L wird von der Stufe 9 abgegeben, wenn sich der Schalter in der Stellung 1 befindet. Zum Lesen wird in das Adressenregister 19 dasjenige Binärwort eingegeben, von dem festgestellt werden soll, ob es eine 1 oder 0 war, d.h. im erwähnten Beispiel, ob das Binärwort im Speicher enthalten ist oder nicht, bzw. ob der Artikel am Lager ist oder nicht.
Pur dieses Binärwort bzw. für die zugeordnete Adresse werden die k Stufen 18 entsperrt und liefern z.B. einen Strom, der proportional der Ladung des Kondensators ist. Diese k unterschiedlichen Ströme werden in einer Stufe 14 addiert. Die Summe wird dann in der Stufe 22 mit einem Schwellwert verglichen der bestimmt, ob das Binärwort für diese Adresse eine 1*oder eine 0,ist.Von der Schwelle wird der Flip-Flop 23 in den 1- oder in den O-Zustand gebracht, abhängig davon, ob die Summe größer oder kleiner als der Schwellwert ist· Für andere Adressen im Register 19 erhält man andere Summen, die mit dem gleichen Schwellwert verglichen werden.
909849/1120
ISE/Äeg. 3429 - β -
Der Sehwellwert ist eine Funktion der Zahlen N, k und p. Bei der Berechnung des Schwellwertes nimmt man an, daß das Verhältnis m klein gegen 1 ist, so daß eine normale Gauß1Sehe .Virteilung als Näherung für die Verteilung der Kondensatorladungen verwendet werden kann. Mit den oben angegebenen Zahlenr werten ergibt sich, daß die Ladungen entsprechend, den binären (nicht eingespeicherte Wörter) eine Verteilung gemäß einer Gauß1sehen Kurve mit einer Streuung von <S* =53,6 aufweisen. Der Mittelpunkt dieser Kurve liegt bei dreitausenddreihundertsiebenundfünfzig Ladungseinheiten (Kurve Go, Fig. 3)· Die Ladungen entsprechen den Binärwerten 1 (eingespeicherte Wörter) und haben eine Verteilung gemäß einer Gauß'sehen Kurve mit der gleichen Streuung. Der Mittelpunkt dieser Kurve liegt jedoch bei dreitausendseehshundertdreiundfünfzig Ladungseinheiten (Kurve G1). Fig. 3 zeigt diese beiden Kurven GO und G1 und ihre gegenseitige Lage.
Aus diesen beiden Kurven kann ^e nach der Aufgabenstellung ein Schwellwert bestimmt werden. Soll z.B. die Entscheidung, ob «8 sich um ein erkanntes oder um ein nicht erkanntes Wort handelt, gleichwertig sein, so muß der Schwellwert so gewählt werden, daß die Wahrscheinlichkeiten, daß eine 1 anstelle einer O und eine O anstelle einer 1 erkannt wird, gleich sind. Da die beiden Kurven gleich sind, ist der Schwellwert im vorliegenden VaIIe der Abszissenwert des gemeinsamen Punktes A der beiden Kurven, d.h. er liegt bei S « 3 514.Ladungseinheiten. Aus den Tabellen der Gauß1 sehen Verteilung bestimmt man die zulässige fehlerwahrscheinlichkeit für S » 3 514. zu 0,5 %.
Der Speicher arbeitet also, wenn kein Fehler vorliegt, mit einer geringen Jedoch nicht vernachlässigbaren Fehlerwahr·» scheialichkeit von 0,5 %. Diese Fehlerwahrseheinlichkeit ist auf di· besondere Organisation, die für den Speicher gewählt wurdef zurückzuführen. Is ist leicht einzusehen, daß der Ausfall von einer oder mehreren Speicherzellen die Fehlerwah*- acheinlichkeit praktisch nicht beeinflußt.
909849/1120
.9.
ISE/Reg. 3429 - 9 -
ι Sie Anordnung nach Pig. 1 diente dazu, das Prinzip eines Speichers mit verteilter Redundanz gemäß der Erfindung zu 'zeigen, "bei dem ein (|p-Oode verwendet wurde, d»h. "bei dem die k Werte gleichzeitig auftreten. Bei einem solchen Speicher ist eine große Anzahl gleicher Stufen, z.B.. UND-Schaltungen und Stromimpulsgeneratoren, erforderlich. Zur Verringerung des Aufwandes kann man den Code auch in Serie darstellen, d.h. die Einspeicherung erfolgt im Zeitmultiplex.
Pig. 2 zeigt ein anderes Ausführungsbeispiel der Erfindung, bei dem die Speicherelemente im Zeitmultiplex angesteuert werden. Dieser Speicher besteht aus einer magnetischen Trommel 30. Jede Trommelspur, z.B. 31a, kann IT Bit speichern. Der Antriebsmotor der Trommel ist in Pig. 2 nicht gezeigt, aber es wird unterstellt, daß die Trommel mit konstanter Drehzahl in Richtung des Pfeiles 39 umläuft. Die Schreib- und Lesestufen, die zu den Spuren 31a bis 37a gehören, sind mit 3"T bis 37 bezeichnet. Auf der Spur 36a sind Ef Binärzeichen 1 aufgebracht, so daß der Block 36 N Impulse pro Trommelumdrehung abgibt. Auf der Spur 37a ist ein einzelnes Binärzeichen 1 aufgebracht und die Stufe 37 liefert deshalb nur einen Impuls pro Trommelumdrehung. Diese beiden Spuren 36a und 37a sind die Taktspuren.
Die Schreib/Lesestufen 31 bis 37 sind nicht gegeneinander versetzt. Die Stufen 31 bis 35 sind so ausgelegt, daß dem Lesen eines Bits aus einer bestimmten Speicherzelle das Schreiben eines anderen Bits in dieselbe Zelle erfolgen kann. Ein solcher Lese/Schreibvorgang findet zwischen zwei Taktimpulsen, von der Spur 36a statt. Solche Lese/Schreibstufen sind aus dem Stand der Technik bekannt.
Vor dem Schreiben wird die Information auf allen Spuren durch Schreiben einer 0 gelöscht. Die Information auf den Taktspuren bleibt selbstverständlich erhalten.
-10-909849/1120
ISE/Reg. 3429 - 10 -
■Über die Stufe 51 - die nicht näher beschrieben isty gelangen die Lese- und Schreibbefehle sowie die Adressen und die Information zum Speicher. Beim Schreiben gibt die Stufe 51 die Adresse (an ein Eegister 41) und die Information ab. Beim Lesen gibt die Stufe 51 die Adresse und einen Lesebefehl ab. Durch einen. Lesebefehl wird der Schalter 50 in die Stellung E gebracht.
Bei einer bestimmten n-stelligen Binärkombination im Register 4-1 liefert die Stufe 42 an ihrer Ausgangsleitung (die ein Eingang j der Torschaltung 43 ist) im Takt der Impulse von der Spur 36a \ eine Folge von O- und 1-Bit ab. Der Beginn der Parallelj Serienwandlung wird-vom Nahtimpuls auf der Spur 37a gesteuert, ! so daß gewährleistet ist, daß ein bestimmter Codeschritt immer in der gleichen Speicherzelle abgespeichert wird.
: Beim Schreiben befindet sich der Schalter der Stufe 50 in der Stellung E, d.h. es tritt kein Lesesignal L auf Λ so daß die UND-Schaltung 49 gesperrt ist, während die UND-Schaltung 43 nicht gesperrt ist. Bei der UND-Schaltung 43 bedeutet der horizontale Strich durch den Pfeil L ein Inhibitionssignal, d.h. die UND-Schaltung 43 ist nur durchlässig, wenn das Lesesignal L nicht vorhanden ist. Wenn das von der Stufe 44 gelieferte Bit, das geschrieben werden soll, eine 1 ist, und wenn das Bit, das die Stufe 42 abgibt, ebenfalls eine 1 ist, dann ist die Torschaltung 43 durchlässig und eine binäre 1 gelangt zum Eingang b der Addierstufe 45. Die Addierstufe 45 hat die Aufgabe, das zu speichernde Bit, z.B. eine 1, zu den bereits gespeicherten fünf Bits, die zu diesem Zeitpunkt gleichzeitig von der Trommel gelesen werden, hinzuzuaddieren. Da diese fünf Bit unterschiedliche Gewichte haben, ist jeder Spur 31a bis 35a ein Gewicht zugeordnet, im Beispiel 2 für die Spur 31a, 21 für die Spur 32a, 22 für die Spur 33a, 2^ für die Spur 34a und 2^ für die Spur 35a.
-11-90 9 8Λ9/1120
ORIGINAL
I8B/&eg. 3429 - 11 -
Beim Speichern der ersten 1 war vorher keine 1 gespeichert, eo daß alle fünf gelesenen Bits O sind. Sie Addition liefert das Ergebnis 1 und deshalb wird nur die Aus gangs le itung bQ .des Addierwerkes 45 entsprechend dem Gewicht 2 markiert. Die • «rate Λ wird deshalb auf der Spur 31a abgespeichert. Nimmt man an, daß die Lesezeit verglichen mit der Zeit, die sich die Speicherzelle unter den Leseköpfen befindet, sehr kurz ist, d.h. klein gegen die Zeit, die zwischen zwei Taktimpulsen liegt, dann kann die verbleibende Zeit zur Durchführung der Addition der gelesenen Zahl mit der Zahl, die die UND-Schaltung 43 auf der Leitung b liefert und zum Wiedereinschreiben des Ergebnisses verwendet werden· Die fünf Bits dieser Binärzahl gelangen über eine Gruppe von fünf Leitungen zu den Schreibköpfen.
Wenn das nächste von der Stuf· 42 gelieferte Bit eine 0 ist, l«t die Torschaltung 43 gesperrt und das Bit, das zu den von der Trommel gelesenen Wert addiert wird, ist ebenfalls eine O, eo daß der abgelesene Wert wieder eingespeichert wird. Ss ist also ersichtlich, daß ein von der Stufe 44 geliefertes 1-Bit nur dann geschrieben wird, wenn durch den Code von der Stufe gleichzeitig die Torschaltung 43 geöffnet wird. Wenn die Trommel N Speieherzellen zu je fünf Bit hat, dann muß der von der Stufe 42 gelieferte Code in N Taktzeiten abgearbeitet werden und während dieser N Taktzeiten werden k 1-Bit gespeichert, wobei die Speicherzellen in denen diese 1-Bit abgespeichert werden, von dem Code abhängen.
Da wie Sei dem Beispiel nach Fig. 1 ρ 1-Bit gespeichert werden und da jede Speicherzelle durchschnittlich ρ χ ^ 1-Bit speichert, kann man zeigen, daß die Anzahl der notwendigen Spuren sich aus der Beziehung 2m - 1^p x| sii m. Im angenommenen Beispiel ■it N « 4000, k - 300 und ρ -· 150, ergibt eich hieraus 2a - 1 > 12. Mit m - 5 ist diese Ungleichung erfüllt.
849/1120
fNAL INSPECTED
H9969.6
^SE/Reg. 3429 - 12 -
Zum Lesen wird das n-stellige Binärwort, dessen Vorhandensein im Speicher geprüft werden soll, in das Register 41 eingegeben. Es soll dabei festgestellt werden, ob das n-stellige Binärwort .gespeichert war, d.h. ob sich bei dem Vergleich eine binäre 1 ergibt oder ob es nicht gespeichert war, d.h. ob sich beim Vergleich eine binäre 0 ergibt. I1Ur einen bestimmten Code im Register 41 liefert die Stufe 42 k 1-Bits und diese k 1-Bits öffnen die torschaltung 49 k mal in federn Trommelumlauf, der N Takt zeiten hat. Die Binärzahlen, die während dieser k Takteeiten gelesen werden, gelangen auf einen Akkumulator 46, der die Summe der während eines Trommelumlaufes gelesenen k Binärzahlen bildet. Diese Summe wird mit einem Schwellwert in einer Stufe 47 verglichen, deren Ausgangssignal einen Flipflop 48 in den 1-Zustand bringt, wenn die Summe größer als der Schwellwert ist bew. in den O-Zustand bringt, wenn die Summe kleiner ist. Wie im Zusammenhang mit Fig. 1 beschrieben, wird dieser Schwellwert als Funktion der Zahlen 3ÜT, k und ρ und der Fehlerwahrscheinlichkeit berechnet. Da die Zahlenwerte für die Anordnung nach Fig. 2 gleich sind wie für die Anordnung nach Fig. 1» ergibt sioh derselbe Schwellwert von S « 3 514 Ladungseinheiten·
Während des Schreibvorganges werden die Signale auch auf die Torschaltung 49 gegeben. Diese ist jedoch gesperrt, da das Lesesignal L nicht vorhanden ist, so daß der Akkumulator 46 keine Werte aufnimmt. Während des Lesens ist das Lesesignal L vorhanden, so daß die Stufe 49 während jedes Taktimpulses durchlässig gesteuert wird, so daß die Signale zum Akkumula-.tor 46 gelangen* Gleichzeitig gelangen die Signale zum Addierwerk 45» an deseen Eingang b kein Wert auftritt, weil wegen des Vorhandenseins des Lesesignals L die Torschaltung 43 gesperrt ist* Das Addierwerk 45 arbeitet dann als Register und die geleeetien Signale werden wieder an den gleichen Speicherplätzen eingespeichert. Durch diese Maßnahme wird der Lesevorgang nicht behindert.
-13-909849/1120 OFHGSNAL !NäPECTED
ISE/Beg. 3429 - 13 -
Wenn -ein solcher Speicher zu einem vollständigen Rechner gehört, ist die Stufe 51 ein Teil des Rechners. Sie ist ebenso wie die Stufe 24 nach Pig. 1 nur aufgenommen worden, um eine vollständige Anordnung zu zeigen. Der erfindungsgemäße Speieher, von dem zwei Ausgangsformen beschrieben wurden, umfaßt eine große Anzahl möglicher Kombinationen, und zwar alle im (^)-Oode aSg-
4-50 liehen Kombinationen, d.h. etwa A « 10 J bei IT » 4000 und k » 300. Von dieser Anzahl A werden erfindungsgemäß nur ρ Kombinationen verwendet, d.h. es werden ρ « 150 Binärwörter eingespeichert. Sie anderen Kombinationen sind nicht eingespeicherten Wörtern zugeordnet oder si^ werden überhaupt nicht verwendet, so daß mit einem solchen Speicher (-) B- stellige Codewörter mit ρ 1-Bit gespeichert werden können. Die Kapazität eines «eichen
Speichers ist gegeben durch logo (^), d.h. etwa 250-000 Bits bei ρ = 150. Vergleicht man diese Zahlen mit der Kapazität der verwendeten Trommel, die N χ n = 20 000 Stellen ist, sieht man, daß ein Speicher gemäß der Erfindung mit einer Kapazität von 20 000 Bits äquivalent ist einem Speicher mit einer Kapazität von 250 000 Stellen, sofern er für die Erkennung einer kleineren Zahl von Kombinationen aus einer großen Anzahl von Kombinatic en verwendet wird.
Die beiden Beispiele, die im Zusammenhang mit den tfig. 1 und 2 beschrieben wurden, verwenden das Speichern einer Binärstelle für eine gegebene Kombination. Es können auch mehrere gleichartige Anordnungen parallel verwendet werden, wobei sie vom selben Register und von der gleichen Logik gesteuert werden. Die Schwellwerte sind dabei in jeder Anordnung gleich, wenn die Zahl ρ gleich ist. Bei einer Magnettrommel z.B, kann man, wenn die Anzahl m der Spuren pro Anordnung nicht groß ist,' eine einzelne Trommel für die verschiedenen Stellen jeder Anordnung verwenden.
909849/1120
U99696
ISB/Beg. 3429 - 14 -
Nachstehend wird die Wirkungsweise der Anordnung noch einmal kurz zusammengefaßt: '·
Yon 2n möglichen Wörtern mit einer Länge von η Bit sind ρ4ί 2ß Wörter in der Weise abzuspeichern, daß beim Lesen festgestellt werden kann:, ob ein vorgegebenes Wort der Länge η im Speicher enthalten ist oder nicht.
Dabei wird wie folgt verfahren:
Jedes Wort der Länge η wird in ein Wort der Länge N umgewandelt (Zuordner 12 -f 13 in Pig. i),und zwar in einen (^)-Code* Tür die Speicherung stehen 2ϊ Speicherelemente zur Verfügung. Jedes dieser Speicherelemente kann nach Tig* 1 eine bestimmte Anzahl verschiedener Werte (gleicher Abstand von Wert zu Wert) speichern. Beim Einspeichern werden die ρ Wörter nacheinander eingegeben, im Zuordner in den (k)-Oode umgesetzt und überlagernd in die N mehrwertigen Speicherelemente eingespeichert.
Beispiel:
Angenommen N » 10, k - 5 und ρ ■ 6
Durch die Umsetzung in (j^-Code ergeben sich für die ρ einzu speichernden Wörter z.B. die Binärwörter:
ΤΛ.
0 1 1 0 1 0 1 1 0 0
1 1 1 0 1 0 0 0 0 1
0 1 0 1 0 1 0 1 0 1
1 1 0 0 0 0 0 1 1 1
0 0 0 1 1 1 1 1 0 0
0 1 1 0 1 1 0 0 1 0
2532432423
Nach dem Einspeichern sind in den einzelnen Speicherelementen dann die in Tabelle 1 unten angegebenen Ziffernwerte gespeichert, die sich durch Addition der Einsen in jeder Spalte ergeben.
909849/1120
IBE/Äeg. 3*29 - 15 -
!Beim Lesen wird ein an eich beliebiges Wort der Länge η (eingegeben, wieder in das zugeordnete (fc)-Godewort umgewandelt und die Quersumme der Ziffernwerte (in den K Elementen gespeichert) gebildet, für die das zugeordnete (^)-Codewort eine 1 enthält. Beispielι
nach Tabelle 1 gespeicherte Wertet 25324324-32 •ingegebenes (]j[)-Codewort a) 1001010011
b) 110 0000111
Bei eines Schwellwert von z.B.14 ergibt
im Pail a) die Quersumme 2 + 2 + 3 + 3 + 2-12 im fall b) die Quersumme 2+5+4+3+2-16
Im Fall a) handelt es sich um ein nicht eingespeichertes Wort, im fall b) um ein eingespeichertes Wort.
Wählt man N, k und ρ genügend groß, allerdings dabei so kann man uneingeschränkt eine Normairerteilung für die gebildeten Quersummen zugrunde legen und erhält damit den Punk* tionsverlauf nach Hg· 3· Dort ist als Abszisse die Quersumme aufgetragen, während die Ordinate die Wahrscheinlichkeit angibt, mit der diese Summe erreicht wird, wenn das Wort nicht eingespeichert war (linke Kurv«) und wenn das Wort eingespeichert war (rechte Kurve). Durch Xinfuhren einer Schwelle (S bzw* A in Fig· 3) ist es damit möglich, mit einer gewissen Sicherheit aus der Quersumme zu ermitteln, ob das Wort eingespeichert war oder nicht, je nachdem, ob die Quersumme über oder unter der Schwelle liegt·'
3 Patentansprüche 2 Bl. Zeichn., 3
9 0 9 8 4 9/1120 miGmAL 'WGcrrco _16_

Claims (2)

U99696 ISE/Eeg. 3429 - 16 - Patentansprüche
1. -Assoziativer Speicher für n-stellige Binärwörter mit vorgegebener kleiner Fehlerwahrscheinlichkeit bei der Ermittlung, ob ein Abfragewort in einem vorgegebenen Vorrat von Wörtern enthalten ist oder nicht, dadurch gekennzeichnet, daß die n-stelligen Binärwörter zuerst in einem ersten Zuordner (12) in einen (2n)-0ode und anschließend in einem zweiten Zuordner (13) in einen (^.)-Oode umgewandelt werden und daß die Ausgangssignale dieses zweiten Zuordners zur Ansteuerung ' von k von insgesamt N mehrwertigen Speicherelementen dienen, in die beim Schreiben die Binärwörter überlagernd derart eingeschrieben werden, daß in jedem Speicherelement die Summe der beim Schreiben aller Wörter auftretenden 1-Markierungen für dieses Speicherelement gebildet wird, wobei ■ jedoch nur eine gegenüber der möglichen Anzahl sehr kleine Anzahl ρ von Binärwörtern (p4£ 2n) eingespeichert wird und daß beim Lesen des Speichers das Abfragewort wie beim Schreiben eingegeben wird und die Summe der gespeicherten Werte derjenigen Speicherelemente gebildet wird, für die das Abfragewort eine binäre 1 aufweist und daß die so gewonnene Summe zur Feststellung, ob es sich um ein gespeichertes Wort handelt oder nicht, mit einem Schwellwert verglichen wird,
Ne/Sd
15.6.66 . -17-
9098 49/1120
ISE/Äeg. 3429 - 17 -
de,r aus den Werten für N", k und ρ und der Pehlenrahrscheinlichkeit aus einer Gauß1sehen Kurve ermittelt wurde·
2. Speicher nach inspruch 1, dadurch gekennzeichnet, daß zur analogen Speicherung Kondensatoren verwendet werden, die in untereinander gleichen Schritten aufladbar sind und daß beim Schreiben eines Wortes alle bzw. die k ausgewählten Speicherelemente gleichzeitig angesteuert werden.
3* Speicher nach Anspruch 1, dadurch gekennzeichnet, daß xur binären Speicherung eine Magnettrommel dient und daß' die
den Speicherelementen entsprechenden Spurabschnitte nacheinander im Zeitmultiplex aufgerufen werden, wobei Lesen, - Indern des gespeicherten Wertes und Wiedereinschreiben im gleichen Trommelumlauf erfolgt.
ORIGINAL INSPECTED
9098Λ9/1120
Le e rs ei te
DE19661499696 1965-06-25 1966-06-18 Assoziativer Speicher Pending DE1499696A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR22346A FR1452672A (fr) 1965-06-25 1965-06-25 Circuits d'enregistrement d'informations

Publications (1)

Publication Number Publication Date
DE1499696A1 true DE1499696A1 (de) 1969-12-04

Family

ID=8583108

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19661499696 Pending DE1499696A1 (de) 1965-06-25 1966-06-18 Assoziativer Speicher

Country Status (6)

Country Link
BE (1) BE682910A (de)
CH (1) CH452007A (de)
DE (1) DE1499696A1 (de)
FR (1) FR1452672A (de)
GB (1) GB1108130A (de)
NL (1) NL6608773A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5833026A (en) * 1994-06-28 1998-11-10 Ab Volvo Wheel suspension for a pair of driven vehicle wheels

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5833026A (en) * 1994-06-28 1998-11-10 Ab Volvo Wheel suspension for a pair of driven vehicle wheels

Also Published As

Publication number Publication date
BE682910A (de) 1966-12-22
FR1452672A (fr) 1966-04-15
CH452007A (fr) 1968-05-15
NL6608773A (de) 1966-12-27
GB1108130A (en) 1968-04-03

Similar Documents

Publication Publication Date Title
DE2356260C3 (de) Dynamisch doppelt geordneter Schiebregisterspeicher und Verfahren zum Betrieb des Speichers
DE1120184B (de) Speicheranordnung zur Speicherung von binaer dargestellten Informationen in Fernmelde-, Buchungs- oder Rechenanlagen
DE2914132A1 (de) Datenbanksystem mit informationsvergleich
DE2718092A1 (de) Optischer informationsplattenleser
DE3015992A1 (de) Programmierbare logische anordnung
DE1499687B2 (de) Speicherschutz-einrichtung
DE1249926B (de) Einrichtung zum Umadressieren fehlerhafter Speicherstellen eines beliebig zuganglichen Hauptspeichers in einer Datenverarbeitungsanlage
DE2150751A1 (de) Digitaler Sinus-Kosinus-Generator
DE2031040B2 (de) Verfahren zur festlegung des zugangs von mehreren benutzern zu einer einheit einer datenverarbeitungsanlage und anordnung zur durchfuehrung des verfahrens
DE3123444A1 (de) Verfahren und anordnung zum nichtfluechtigen speichern des zaehlerstandes einer elektronischen zaehlschaltung
DE1524788C3 (de) Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
CH372732A (de) Steuereinrichtung für einen Servomechanismus
DE1524111C3 (de) Elektronische Datenverarbeitungsanlage
DE1269182B (de) Inhaltsadressierter Informationsspeicher (Katalogspeicher)
DE2136270A1 (de) Verfahren und Vergleicher zum Vergleich zweier Binärzahlen
DE2135625B1 (de) Schaltungsanordnung zur automatischen Schreib-Unterdrückung
DE2311503A1 (de) Datenverarbeitungsanlage mit mehreren zentraleinheiten
DE2456708A1 (de) Assoziativspeicheranordnung
DE2729361A1 (de) Speicherschaltung
DE2243053B2 (de) Verfahren und anordnung zum einschreiben von woertern in einen speicher
DE1499696A1 (de) Assoziativer Speicher
DE2905814A1 (de) Speicher
DE1295656B (de) Assoziativer Speicher
DE1774849C3 (de) Adressierungseinrichtung für eine Speicherabschnittkette
DE2519195A1 (de) Assoziativspeicher