DE2404146A1 - Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem - Google Patents

Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem

Info

Publication number
DE2404146A1
DE2404146A1 DE2404146A DE2404146A DE2404146A1 DE 2404146 A1 DE2404146 A1 DE 2404146A1 DE 2404146 A DE2404146 A DE 2404146A DE 2404146 A DE2404146 A DE 2404146A DE 2404146 A1 DE2404146 A1 DE 2404146A1
Authority
DE
Germany
Prior art keywords
memory
block
unit
address
storage
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
DE2404146A
Other languages
English (en)
Inventor
Brian Jeremy Parsons
Lynne Margret Purcell
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.)
Hawker Siddeley Dynamics Ltd
Original Assignee
Hawker Siddeley Dynamics Ltd
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 Hawker Siddeley Dynamics Ltd filed Critical Hawker Siddeley Dynamics Ltd
Publication of DE2404146A1 publication Critical patent/DE2404146A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/785Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/006Identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • G06F12/0653Configuration or reconfiguration with centralised address assignment
    • G06F12/0661Configuration or reconfiguration with centralised address assignment and decentralised selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)
  • Hardware Redundancy (AREA)

Description

240AU6
EIKENBERG & BRÜMMERSTEDT
PATENTANWÄLTE IN HANNOVER
Hawker Siddeley Dynamics Ltd. 240/591
Digitales;, hierarchisch in wenigstens drei Hierarchie-Stufen aufgebautes Speichersystem
Die Erfindung "betrifft Speichersysterne für Computer, insbesondere Speicher mit Halbleiterschaltungen in Großintegrationstechnik (LSI). Die Erfindung ist in ihrer Gesamtheit auf Speicher mit wahlfreiem Zugriff und andere Ausgabe/Eingabe-Speicher und im gewissen Maße auch auf lestwertspeicher anwendbar.
Der Erfindung liegt die Aufgabe zugrunde, einen Speicher zu schaffen, der die folgenden Merkmale bzw. Vorteile aufweist:
(a) Aufbau in Modultechnik, leichte Erweiterbarkeit;
(b) Hohe Betriebssicherheit mit leichter Rekonfiguration;
(c) Virtuelle Adressierung mit leichter Reallokation.
Die gestellte Aufgabe wird bei einem digitalen, hierarchisch in wenigstens drei Hierarchie-Stufen aufgebautem Speichersystem gemäß der Erfindung dadurch gelöst, daß eine Tielr· zahl von Haupt- und Speichereinheiten vorgesehen ist, die je unabhängig voneinander mit einer ersten Stufen- Sammelschiene
409831/0877
2404H6
über eine Schnittstelle zusaramenschalfbar sind, daß jede Haupt-Speichereinheit ihrerseits wieder eine Vielzahl von Speichereinheiten oder Untereinheiten enthält, die je unabhängig voneinander mit einer zweiten Stufen-Sammelschiene über eine Schnittstelle innerhalb und bezogen auf die Speichereinheit verbunden sind, und daß jede Speichereinheit oder Untereinheit ihrerseits wieder eine Vielzahl von Speicherblöcken enthält, die je unabhängig voneinander mit einer dritten Stufen-Sammelschiene innerhalb und bezogen auf den Block über eine Schnittstelle verbunden sind.
Jeder Speicherblock kann wenigstens ein Speicherfeld enthalten und für eine virtuelle Adressierung vorgesehen sein, wobei der Block Mittel zum Decodieren der Gesamtheit einer von der Haupt-Sammelschiene durch die einzelnen Stufen der Hierarchie gegebenen Adresse enthält. Mr die Adress-Decodierung kann der Speicherblock eine Biock-Eckennungsziffer oder mehrere solche Ziffern in einem oder mehreren Block-Registern enthalten, die einzeln für sich setzbar sind, z.B. durch Software. Bei einer bevorzugten Ausführungsform der Erfindung ist jeder Speicherblock von dem übrigen Seil des Systems und jede Speichereinheit oder Untereinheit von dem übrigen leil des Systems isoliert.
Durch diese lösung ist es möglich, einen Speicher jeder gewünschten Größe zu verwirklichen, in dem Fehler in jedem einzelnen Speicherblock isoliert werden können und ein neuer Block sehr schnell auf der entsprechenden dritten Stufen-Sammelschiene eingesetzt werden kann. Durch den Einschluß von weiteren redundanten Speicherblöcken oder Bausteinen kann bei jedem im Betrieb befindlichen fehlerhaften Block
409831 /0877
2404H6
die Adresse gelesen und gespeichert werden,und es kann dann einErsatzblock eingesetzt v/erden, der den fehlerhaften Block ersetzt, und dem dieselbe Adresse gegeben wird, woraufhin der fehlerhafte Block dann isoliert wird. Es können auch, falls notwendig, ganze Speichereinheiten isoliert v/erden.
Dies ist besonders auf dem Gebiete der Raumfahrt-Computer von großem Vorteil, wo die Betriebssicherheit des Speichers unter anderem von der Betriebszeit abhängig ist, bevor dem Speicher beim Auftreten von Fehlern die Ersatzeinheiten ausgehen. Bei bekannten Systemen war es notwendig, im Interesse einer hohen Betriebssicherheit und und langen Betriebszeit für jeden Speicherblock einen Ersatzblock vorzusehen, während durch das erfindungsgemäße System der Prozentsatz an mitgeführten Ersatzblöcken beträchtlich verringert wird. Auf diese Weise wird die Volumen- und Gewichtsbelastung beträchtlich verringert. Es ist außerdem nicht notwendig, aufwandreiche und viel Platz beanspruchende Schaltmittel zum Einschalten - der Ersatzteile vorzusehen. Anordnungen, die gemäß der Erfindung ausgebildet sind, werden im folgenden anhand der Zeichnung an Beispielen erläutert. In der Zeichnung zeigen:
Pig. 1 ein Blockschaltbild eines erfindungsgemäßen Speichers mit wahlfreiem Zugriff
Fig. 2
und 3 Formen von Adressen, die in dem System nach
verwendet werden,
409831/0877
2404U6
Pig. 4 das Schaltbild eines Speicherelementes oder eines Chips des Systems nach Pig. 1 und
Pig. 5 ein Plußdiagramia für die virtuelle Adressierung, die "bei einem hierarchischen Speicher gemäß der Erfindung angewendet wird.
Die folgenden Abkürzungen bedeuten:
EAM = Speicher mit wahlfreiem Zugriff (Random
Access Memory). Diese Bezeichnung schließt alle lypen von Ausgabe/Eingabe-Speichern ein.
ROM = Pestwertspeicher (Read Only Memory) LSI = Schaltung in Großintegrationsteennik CPU - Zentraleinheit
DMA = Speichereinheit mit direktem Zugriff CMOS= Komplementäres Metalloxidsilikon
Einige, im folgenden benutzten Ausdrücke bedeuten folgendes:
"normaler Zugriff" oder "virtueller Zugriff" werden unter sich austauschbar verwendet zur Anzeige eines Speicherzugriffes zu dem Zweck, eine gespeicherte Information aus einer Speieher-
409831/0877
240AU6
zelle auszugeben oder eine Information in die Speicherzelle einzugehen.
"Lese-Zugriff" - eine Ühertragung zur Eontrolle von "Hardware-Stufen", z.B. zur Eontrolle von Isolatoren, zur Veränderung von fern verstellharen Adressregistern, zum Rückstellen von Flip-Plops (diese sind manchmal konventionell gebildet durch "spezielle" Eingangs/Ausgangs-Befehle)·
"Virtuelle Adresse", "wirkliche Adresse" = Adress teile eines virtuellen Zugriffes bzw· eines echten Zugriffes.
RAM Stufen
zeigt einen Speicher mit wahlfreiem Zugriff in LSI-leehnik, der einen Aufbau in Modultechnik hat, somit eine hohe Betriebssicherheit aufweist und leicht erweiterbar ist. Er beisteht aus drei Stufen, die eng in Anlehnung an die physikalische Gliederung des RAM-Speichers aufgebaut sind.
Stufe 1 (Hauptspeicheransteuerung). Diese besteht aus einer RAM-Eontrolleinheit 11, in der zwei Hybrid-Einheiten enthalten sind, die über eine Schnittstelle mit dem Rest des Computersystems über eine Haupt-Sammelschiene 10 verbunden sind·
Stufe 2 (Speicheransteuerung). Diese enthält eine weitere Isolierstufe und die notwendige logik für die echte Adresskontrolle und die Blockisolierungskontrolle. Diese Speicheran-
409831 /0877
Steuerung ist aus zwei Bybrid-Einheiten aufgebaut. Auf geder Speichereinheit wird eine Speicheransteuerung verwendet, ausgenommen bei der RAM-Kontrolleinheit.
Stufe 3 (Chip-Stufe). Jeder Speicher-Chip 13 enthält ein Speicherfeld mit 32 Wörtern von 18 bits sowie eine Adress-Decodier- und Steuer-Logik. Die Chips sind in Paaren angeordnet und bilden einen Basis-Speieherblock von 64 Wörtern. Zwei Blöcke (vier Speicher-Chips) sind in einer Bybrid-Einheit 14 zusammengefaßt, und acht dieser Einheiten sind in einer Speichereinheit 15 enthalten.
Auf diese Weise enthält jede Speichereinheit 15 eine RAM-Kapazität von mehr als 1000 Wörtern (18 bits pro Wort) in Form von 32 Speicher-Chips 13, angeordnet als 16 (64 Wörter) Blöcke, sowie die Steuerlogik und die Isolation zur Betätigung dieser Blöcke. Eine RAM-Speichereinheit besteht aus mehr als 16.000 Wörtern und enthält 16 Speichereinheiten 15 und einen Eontrollspeicher. Die Information von dem übrigen £eil des Computers geht über den RAM-Kontrollspeicher 11 und dann zu der Unter-Sammelschiene 16 der zweiten Stufe, die sie auf jede Speicheransteuerung 12 verteilt. Die 32 Speicherchips 13 sind dann mit der Speicheransteuerung 12 über ODER-Schaltungen verdrahtet.
RAM-Zugriff und Kontrolle
Zu Beginn eines Zugriffes ist das Speichersystem auf den Empfang von Informationen eingestellt. Die Erkennung äer Art des Zugriffes (echt oder virtuell) erfolgt zunächst in der
409831 /0877
Schnittstelle 11. Wenn die Adresse eine virtuelle Adresse ist, wird sie durch die Schnittstelle 11 und über die Speicheransteuerungen 12 zu jedem Speicherblock in der Einheit weitergegeben. Ein Block, der die virtuelle Adresse als die ihm zugeordnete Adresse erkennt, antwortet daraufhin, und der Zugriff wird fortgesetzt. Wenn die Adresse eine echte Adresse ist, erkennt das RAM-System an der Schnittstelle die RAM-Einheit-lummer, und, wenn die Adresse einer Zeile in dem Speicher zugeführt wird, werden die Stellen- und Blocknummern an die Unterschiene 16 der Stufe 2 weitergegeben. Eine der Speicheransteuerungen 12 erkennt seine Speicherstellennummer, und nur diese Speicheransteuerung gestattet den Informationsfluß zu seinen Speicherblöcken.
Die in einem Speicherfeld in einem Chip 13 gespeicherte Information kann nur mit einer virtuellen Adresse zugegriffen werden (Pig. 2). Die speziellen Register in einem Chip (d.h. Zustand, Prozessnummer, Blocknummer) können nur mit einer echten Adresse zugegriffen werden (Pig. 3).
Einzelheiten des RAM-Chip
In Pig. 4 enthält ein RAM Speicher Chip:
(I) Ein Speicherfeld 17 mit 576 bits, gebildet als 32 Wörter mit 18 bits.
(II) Die Decodierlogik und !reiber 18 für den Zugriff jjeder einzelnen Zeile (Wort) des Speicherfeldes.
409831/087
(III) Ein Prioritäten-Uummer~Register 19, das gespeist ist durch das Operationssystem mit der Zahl des Prozesses, die in der Lage ist, Zugriff zu dem besonderen Chip zu nehmen·
(IV) Ein Adresspuffer 20 zum Pesthalten der Adresse des dem Zugriff unterworfenen Eeils (Zeile) des Speichers.
(T) Ein Blocknummer-r-Register 21, das auch durch das Operationssystem gespeist wird, wenn eine virtuelle Adresse vorliegt. Has letzte bit der Bloeknummer ist jedoch fest verdrahtet, so daß der Chip immer entweder die oberen 32 Wörter oder die unteren 32 Wörter eines Speicherblockes speichert.
(VI) Ein Statusregister 22, das die Information über den Speicherblock enthält, wie:
Eine "voll/leer"-bit, welches als Anzeige dient, ob eine virtuelle Adresse bereits einem Speieherbereich zugewiesen ist.
Einen Fbertragungsunterbrecher, der die Übertragung dieses Blockes zu einem CPU-Zentralspeicher unterbricht.
Einen Eingabe-Unterbrecher, der den Eingabemechanisinus in den Chip unwirksam und diesen Block zu einem Pestwertspeicher macht.
Einen Unterbrecher für den Ausgabevorgang, der die Rückantwort auf eine Ausgabeanfrage unterbricht und als Hinter-
409831 /0877
240AU6 J
grundspeicher dient, z.B. für die Verdoppelung der Speicherung einer vitalen Information.
Ein Abschaitbit, das den Block überhaupt an der Wirkungsweise hindert und eine andere Möglichkeit schafft, einen Block im Falle eines Fehlers in der Isolationskontrolle unwirksam zu machen.
(VII) Eine Vergleichsschaltung 23 zum Vergleich der virtuellen Adresse, die dem Block angeboten wird, mit der gespeicherten Prozess- und Blocknummer.
(VIII) Ein Register 24 für die wirkliche Adressblocknummer, in dem die Adresse fest verdrahtet ist.
(IX) Eine Vergleichsschaltung 25 für die Erkennung der wirklichen Adresse.
(X) Die Kontroll- und Zeitsteuerschaltungen 26 für die virtuellen und echten Ausgabe- und Eingabe-Zugriffe.
Wenn die Eontrollschaltung 26 eines Speicherchip erkennt, daß eine Adresse auf den Adress/Datenleitungen ist, vergleicht sie die Adresse mit ihrer eigenen echten oder virtuellen Adresse (abhängig von dem Eyp des Zugriffes). Wenn Übereinstimmung besteht, wird die "Zugriff-Kontroll-Schaltung" ausgelöst und eine Antwort gesendet. Die Stellennummer der Adresse wird erfaßt, festgehalten und decodiert, wenn die Adresse virtuell ist, oder es wird ein entsprechendes Register ausgewählt, wenn die Adresse eine echte Adresse ist. Der Ausgabe/Eingabevorgang findet dann statt mit der Eingabe
409831 /0877
2404H6
und Ausgabe der Daten aus den einzelnen Stellen, und am Ende des Zugriffes wird die Steuerschaltung in dem Chip zurückgestellt.
RAM Redundanz-Organisation
Die RAIi hat eine hohe Betriebssicherheit wegen ihres Modulaufbaus und der virtuellen Adressierung, Wenn ein Fehler 3n einem Speicherchip 13 durch einen zentralen Prozessor festgestellt wird, dann kann die Einheit 14» zu der er gehört, von dem übrigen !eil des Systems durch eine Speicheransteuerung abgeschaltet und außer Betrieb gesetzt werden. Ein anderer Block kann dann mit derselben virtuellen Adresse wie der fehlerhafte Block durch das Operationssystem des Computers eingesetzt und in Betrieb genommen werden. Bei einem Fehler, der alle Blöcke in einer Einheit 15betrifft, kann eine komplette Speichereinheit von dem übrigen leil der RAM Einheit isoliert werden, und zwar durch die Steuerschaltung 11 der Stufe 1« Wenn die gesamte RAIi Einheit ausfällt, kann sie von der Hauptschiene 10 durch entsprechende Mittel isoliert werden. Dadurch bleibt der übrige Seil des Computers in Betrieb, und demzufolge ist ein Zugriff zu anderen Speichereinheiten möglich. Für die am häufigsten auftretenden Fehler (Fehler innerhalb eines Speicherfeldes) jedoch geht nur ein Speicherblock (64 Wörter) für das System verloren.
Hierarchie der Schienen
Diese betrifft den Aufbau eines Speichers mit einer Hierarchie von Schienen und Schnittstellen bzw. Steuereinrichtungen. Fig. 1 zeigt eine solche Hierarchie für ein
A09831/0877
System mit drei Stufen. In der Terminologie dieser Hierarchie können die Aufgaben der einzelnen Teile wieder wie folgt zusammengefaßt werden:
Schiene für Stufe 1t Dieses ist die Haupteomputersehiene oder Speicherschiene 10, durch die der Zugriff auf die Speichereinheit, z.B. von einer GPU, DMA. etc. erfolgt.
Schaltung der Stufe 1: Diese enthält die Schnittstelle zwischen der gesamten Speichereinheit (insbesondere Schiene der Stufe 2) und der Schiene 10 der Stufe 1. Die Schnittstelle ermöglicht Übertragungen zu und von den anderen Einheiten an die Schiene 10 der Stufe 1, obwohl Daten- und Adreßinformationen (und einige Steuersignale) durch die Schnittstelle 11 (über Puffer, falls erforderlich) zu und von den Untereinheiten direkt durchgeschaltet werden. Die Schnittstelle 11 kann mit Möglichkeiten zur Isolierung versehen sein (z.B. unter Verwendung von OMOS Übertragungstoren), so daß ein Fehler auf oder unter der Schiene 16 der Stufe 2 isoliert werden kann, um einen Polgefehler an der Schiene 10 der Stufe 1 zu verhindern.
Schiene der Stufe 2: Dieses ist die Haupt-Intern-Schiene 16 der Speichereinheit und dient dazu, alle verschiedenen Untereinheiten (siehe unten) mit der Schnittstelle 11 der Stufe 1 zu verbinden.
Schaltungen der Stufe 2; Diese enthalten eine Reihe von Schnittstellen 12 zwischen jeder Untereinheit (insbesondere jeder Schiene 28 der Stufe 3) und der Schiene 16 der Stufe 2. Die Untereinheit wird deshalb gewählt, um zwischen der Größe
409831/0877
des grundlegenden Chip-Elementes und der Größe des gesamten Speiebers ein vernünftiges Verhältnis zu schaffen. Sie kann z.B. eine Schaltungsplatte oder eine Speicherplatte sein. Die Aufteilung der gesamten Einheit in Untereinheiten erfolgt in erster linie zum Zwecke der Betriebssicherheit, (wenngleich auch entsprechende Aufteilungen, z.B. in Ansteuer- und Abfrageelektronikschaltungen angewendet werden können). Wenn jede Schnittstelle 12 der Stufe 2 eine Möglichkeit zur Isolation hat, dann kann ein "Fehler an einem einzelnen Speicherelement (z.B. Speicher Chip/Kern 13) oder ein Pehler an der Schiene 28 der Stufe 3 keinen Ausfall der gesamten Speichereinheit verursachen.
Schiene für Stufe 3: Jede Schiene 28 der Stufe 3 ist nur in ihrer eigenen Untereinheit 15 ohne direkte Verbindung zu einer anderen Untereinheit enthalten. Die Schiene ist mit jedem Speicherelement (z.B. Chip 13) in der Untereinheit verbunden.
Schaltungen für Stufe 3t Diese bestehen aus den als Speicherelemente dienenden Chips 13, die die Speicherkapazität der Einheit darstellen, lieben den Speicherzellen ist auch die Schaltung zur Erkennung der Adressen vorhanden, außerdem die Steuerschaltung, die Ausgabeschaltungen usw. Die als Speicherelemente dienenden Chips 13 können von irgendeinem Typ sein, z.B. Festwertspeicher, Ausgabe/Eingabespeicher usv/. Jedes Speicherelement oder jeder kleine Block von Elementen (z.B. jeder Chip oder jede Gruppe von 2 oder 4 Chips oder ein "Speicherblatt" in einem blattförmigen (paged) Computer) kann ggflls. ■ zur Isolierung dienende
409831/0877
240AH6
5Dreiber/Empfanger bis zur Schiene der Untereinheit enthalten und auf diese Weise eine -weitere Isolierstufe bilden, wenn dieses wünschenswert ist.
Die Hauptvorteile dieser hierarchischen Anordnung sind die folgenden:
(a) Flexibilität, Möglichkeit der Aufteilung nach der Modultechnik, indem man die Größe eines Blockes und die Größe einer Untereinheit entsprechend einer passenden physikalischen Aufteilung wählt. Ausführungen unterschiedlicher Speichergrößen (oder unterschiedliche Mischungen von Speichertypen, z.B. RAM, ROM in einem Speicher) lassen sich leicht erreichen. Dies wird dadurch weiter erleichtert, daß die meisten der Adreßerkennungsfunktionen in den unteren Stufen verwirklicht sind (z.B. Stufe 3 in äem Ausführungsbeispiel).
(b) Betriebssicherheit: Durch die Aufteilung der Einheit in Abschnitte, die Verteilung der Punktionen auf verschiedene Schienen und durch die geschickte Anwendung der Isolationsmöglichkeit kann der Speicher so ausgebildet werden, daß die meisten der einzelnen Fehler nur einen kleinen Teil des Speichers unwirksam machen.
(c) Eignung für Großintegrationstechnik (LSI-Secbnik): Indem man einen Block (Schaltung in der Stufe 3) gleich einem oder mehreren LSI Halbleiter-Speicher-Chips macht und eine Untereinheit (Stufe 2) gleich einer (oder zwei)
409831/0877
Schaltungsplatten, kann das hierarchische Speichersystem leicht in IiSI-iDechnik ausgeführt v/erden.
(d) Multiport-Ausbildung: Wenn zwei (oder mehrere) Schienen 10 der Stufe 1 und zwei oder mehrere Schnittstellen der Stufe 1 anstelle der jeweils dargestellten einen derart vorgesehen sind, daß "beide Schnittstellen der Stufe 1 mit einer einzigen Schiene 16 der Stufe 2 verbunden sind, kann eine Dual- (oder Multi-) Portspeichereinheit leicht erreicht werden. Ähnlich kann es für "bestimmte Zwecke wünschenswert sein, zwei oder mehrere Schienen 16 in der Stufe 2 anzubieten, mit entsprechender Wiederholung der Schnittstellen 12 der Stufe 2 für solche Untereinheiten, die einen dualen oder vielfachen Zugriff erfordern.
Wenngleich die Beschreibung der Hierarchie der Schienen auf einer Hierarchie mit 3 Stufen basiert, so können auch mehr als 3 Stufen benutzt werden, wenn dieses wünschenswert ist. Die Wahl eines bestimmten Aufbaus in einer bestimmten Konfiguration hängt ab von einer Vielzahl von Faktoren, z.B. der physikalischen Ausführung , den Anforderungen an die Betriebssicherheit, den Anforderungen an die Flexibilität und Erweiterbarkeit, der Chip-Größe usw.
Adreß-Erkennung; Diese betrifft eine Methode zur Organisierung der Adreß-Erkennungsschaltung in dem Speicher in der Weise, daß die folgenden Punkte vereinfacht werden:
(a) Virtuelle Adressierung, mit voneinander unabhängigen Speicherflächen für verschiedene Prozesse in einem Multipro sess-Sys tem oder für verschiedene Seile eines Prozesses.
409831 /0877
(b) Wiederzuteilung der Speicherung zur Anpassung an verschiedene Ausgabe/Eingabe-Speicheranforderungen in einem Multiprozess-System.
(c) Das Yorsehen einer Gruppe von Ersatz-Ausgabe/ Eingabespeicherelementen für den Austausch von ausgefallenen Elementen und ihre erforderliche Zuordnung.
Dieser Abschnitt ist beschrieben im Zusammenhang mit LSI Halbleiterspeichern, jedoch sind die Prinzipien (mit entsprechender Abwandlung) auf andere Speichertypen anwendbar.
In einem bekannten Speicheradreßsystem werden m Adreßbits von der Einheit (CPU/DMA) ausgesandt und lösen so die Übertragung der Speicherung aus. Die wichtigsten (m-e) dieser bits werden in einer oder mehreren Stufen decodiert und erzeugen somit 2 (m-e) zur Betätigung der Blocks geeignete Signale, die zur Betätigung von bis zu 2 (m-e) Speicherblocks mit je 2 Zeilen ausgenutzt werden. Da. alle Decodierungen, Auslöseschaltungen usw. fest verdrahtet sind, so ergibt sich dadurch ein absolutes Adreßsystem ohne Flexibilität im Betrieb (z.B. Änderung der Wiederzuordnung).
Pig. 5 zeigt die Funktion des virtuellen Adreß-Systems. Wenn man zunächst alle Bezugnahmen auf "p" bits außer acht läßt (d.h. p=O), so ist ersichtlich, daß die Erzeugung der Adressen am auslösenden Ende wie in einem bekannten Speicheradreß-System ist, daß jedoch die ganze Decodierfunktion in allen Adreß-bits in den Speicherblocks selbst konzentriert
409831 /0877
Ist, wobei jeder Speicherblock sein eigenes Signal zur Inbetriebsetzung des Blockes (block enable signal) ableitet. (Unter Block versteht man die oben gegebene Definition). Weiterhin ist die Blockidentifikation jetzt nicht durch feste Verdrahtung bewirkt, sondern durch Vergleich mit Registern, die durch eine Software gesetzt werden können. Auf diese Weise kann jeder Block seine "Blockadresse" haben, die zur Anpassung an die jeweiligen Anforderungen umgestellt werden kann.
Pig. 5 zeigt eine Weiterbildung des grundlegenden virtuellen Adreß-Systems, die z.B. benutzt werden kann, um im Bedarfsfalle eine Prozess- oder Segmenttrennung durchzuführen. Wie in einem bekannten System werden m bits einer Adresse durch eine Starteinheit (CPU/DM) 27 erzeugt. Dieser wird am \vichtigsten Ende eine Gruppe von ρ bits hinzugefügt, die die Hummer des gerade durchgeführten Prozesses kennzeichnen. Diese zusätzlichen ρ bits werden in den Spei cherbloeks14 mit einem p-bit-Register 30 in jedem Block verglichen, und der Befehl "Betätigung des Blockes" wird nur als wahr bezeichnet, wenn für diese ρ bits und für die m-e bits Übereinstimmung festgestellt wird. Das p-bit-Register am Startende \rärde durch das Operationssystem des Computers jedesmal gesetzt, wenn der laufende Prozess geändert wird , und die Hinzufügung von bits kann jedesmal automatisch erfolgen, wenn eine Übertragung ausgelöst wird. Das p-bit-Register 30 und das (m-e) bit-Register 32 an dem Speicherblock werden durch eine Software gesetzt, um im Bedarfsfalle variable gespeicherte Identifikation-Bits zum Vergleich mit den entsprechenden Adreß-bits in der Iquivalenzschaltung
409831 /0877
vorzusehen. Das "Blockbetätigungssignal", das durch die Äquivalenzschaltung 33 an der Leitung 34 erzeugt wird, schaltet die am wenigsten bedeutungsvollen oder 1 bits der Adresse für die Decodierung, wie bei 35 durch, um die entsprechenden Zeilen des Speicherfeldes 17 auszuwählen.
Der Mechanismus zum Stellen der verschiedenen, durch Software setzbaren Register muß getrennt sein von dem "normalen" virtuellen Übertragungsmechanismus. Im allgemeinen hat jedes solcher Register eine "Registeradresse", zu der ein Zugriff mit einer "echten" Übertragung möglich ist. Es können dieselben Schienen für "echte Übertragungen" als auch für "virtuelle Übertragungen" benutzt werden, und zwar mit Unterschieden in dem Steuermechanismus (z.B. Änderung des Zustandes einer bestimmten "echt/virtuell"-Iieitung). Es kann alternativ auch eine getrennte Schienenanordnung benutzt werden, die möglicherweise in einer ähnlichen hierarchischen Ordnung ausgebildet ist. Die echten Adressen sind im allgemeinen in fester Verdrahtung ausgebildet, da es niemals notwendig ist, sie zu ändern.
Zusammenfassend sei gesagt, daß der Zugriff zu jeder Speicherzeile in einem Speicherfeld möglich ist durch Benutzung einer "virtuellen Adresse" durch die Kombination von:
(I) Prozessnummer, falls erforderlich; die Hummer ist enthalten in einem durch Software setzbaren Register 30 innerhalb des Speicherblocks.
(II)' Blocknummer (innerhalb des Prozesses), die den wichtigsten Seil der (virtuellen) Adresse (innerhalb des Pro-
409831 /0877
zesses) darstellt; die Hummer ist enthalten in einem durch Software setzbaren Register 32 innerhalb des Blocks.
(III) Zeilennumner (innerhalb des Blocks), decodiert von den am wenigsten wichtigen Adreß-bits in bekannter Weise.
Durch Verwendung einer "echten Adresse" ist der Zugriff zu jedem durch Software setzbaren Register in bekannter . . fester Verdrahtung möglich. Die echte Adresse kann in einzelne 3?elder unterteilt werden, die darstellen z.B. Hummer der Einheit, Hummer der Untereinheit, B.egisternummer, falls erforderlich. Abgesehen von den hier beschriebenen Registern, kann die Methode benutzt werden, Register zu setzen oder abzufragen, wie z.B. Isolationsschaltungen, ΈΊΐρ-Elops usw., die einen !eil des Oomputerhaushaltes und der Steuerfunktionen eines Computers bilden.
-Patentans prüch e~
409831 /0877

Claims (9)

  1. Patentansprüche
    Digitales, hierarchisch in wenigstens drei Hierarchie-Stufen aufgebautes Speichersystem, dadurch gekennzeichnet, daß eine Vielzahl von Haupt- Speichereinheiten vorgesehen ist, die je unabhängig voneinander mit einer ersten Stufen- Sammelschiene (10) über eine Schnittstelle (11) zusammenschaltbar sind, daß jede Haupt- Speichereinheit ihrerseits wieder eine Vielzahl von Speichereinheiten (15) oder Untereinheiten enthält, die je unabhängig voneinander mit einer zweiten Stufen- Sammelschiene (16) über eine Schnittstelle innerhalb und bezogen auf die Speichereinheit verbunden sind, und daß jede Speichereinheit (15) oder Untereinheit ihrerseits wieder eine Vielzahl von Speicherblöcken (14) enthält, die je unabhängig voneinander mit einer dritten Stufen- Sammelschiene (28) innerhalb und bezogen auf den Block über eine Schnittstelle verbunden sind.
  2. 2. Speichersystem nach Anspruch 1, dadurch gekennzeichnet, daß jeder Speicherblock wenigstens ein Speicherfeld enthält und für eine virtuelle Adressierung vorgesehen ist, und daß der Block Mittel zum Decodieren der Gesamtheit einer von der Haupt- Sammelschiene durch die einzelnen Stufen der Hierarchie gegebenen Adresse enthält.
  3. 3. Speichersystem nach Anspruch 2, dadurch gekennzeichnet, daß die Adress- Decodierung in jedem Speicherblock eine Block-Erkennungsziffer oder - Ziffern in einem oder mehreren Block-Registern verwendet,die einzeln für sich setzbar sind, z.B. durch Software.
    4098 31/0877
  4. 4. Speichersystem nach einem der Ansprüche 1-3, dadurch gekennzeichnet, daß Mittel zum Isolieren jedes Speicherblocks von dem übrigen Eeil des Systems vorgesehen sind.
  5. 5. Speichersystem nach einem der Ansprüche 1-4, dadurch gekennzeichnet, daß Mittel zum Isolieren jeder Speichereinheit oder Untereinheit von dem übrigen Seil des Systems vorgesehen sind.
  6. 6. Speichersystem nach einem der Ansprüche 1-5» dadurch gekennzeichnet, daß Mittel zum Isolierender ganzen Speichereinheit von der ersten Stufen-Sammelschiene vorgesehen sind.
  7. 7. Speichersystem nach einem der Ansprüche 1-6, dadurch gekennzeichnet, daß jede Speichereinheit oder Untereinheit eine Vielzahl von in Betrieb befindlichen Speicherblöcken und einen oder mehrere Ersatzblöcke enthält.
  8. 8. Speichersystem nach einem der Ansprüche 1-7, dadurch gekennzeichnet, daß sie ein durch Software setzbares Register enthält, mit dem zusätzliche Bits dem wichtigsten Ende einer Adresse hinzugefügt v/erden können, die von einer Starteinheit, z.B. einer Zentraleinheit (CPU) oder einer direkten Speicherzugriff-Einheit (DMA) der ersten Stufen-Sammelschiene zufübrbar sind.
  9. 9. Speichersystem nach Anspruch 3 oder einem der Ansprüche 4-8 und Anspruch 3, dadurch gekennzeichnet, daß ein Echtadresssystem zum Zugriff des oder der setzbaren Register(s) vorgesehen ist.
    0 9 8 3 1 / 0 8 7 7
DE2404146A 1973-01-28 1974-01-26 Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem Pending DE2404146A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB4476272A GB1461245A (en) 1973-01-28 1973-01-28 Reliability of random access memory systems
US05/456,647 US3983537A (en) 1973-01-28 1974-04-01 Reliability of random access memory systems

Publications (1)

Publication Number Publication Date
DE2404146A1 true DE2404146A1 (de) 1974-08-01

Family

ID=26265450

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2404146A Pending DE2404146A1 (de) 1973-01-28 1974-01-26 Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem

Country Status (5)

Country Link
US (1) US3983537A (de)
DE (1) DE2404146A1 (de)
FR (1) FR2215671B3 (de)
GB (1) GB1461245A (de)
NL (1) NL7401042A (de)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4150428A (en) * 1974-11-18 1979-04-17 Northern Electric Company Limited Method for providing a substitute memory in a data processing system
US4084230A (en) * 1976-11-29 1978-04-11 International Business Machines Corporation Hybrid semiconductor memory with on-chip associative page addressing, page replacement and control
DE2841222A1 (de) * 1978-09-22 1980-03-27 Telefonbau & Normalzeit Gmbh Schaltungsanordnung zur adressierung von modular aufgebauten und erweiterungsfaehigen daten-speicheranordnungen
US4254463A (en) * 1978-12-14 1981-03-03 Rockwell International Corporation Data processing system with address translation
US4293910A (en) * 1979-07-02 1981-10-06 International Business Machines Corporation Reconfigurable key-in-storage means for protecting interleaved main storage
GB2062912B (en) * 1979-09-29 1983-09-14 Plessey Co Ltd Data processing system including internal register addressing arrangements
JPS5847793B2 (ja) * 1979-11-12 1983-10-25 富士通株式会社 半導体記憶装置
US4498146A (en) * 1982-07-30 1985-02-05 At&T Bell Laboratories Management of defects in storage media
US4506364A (en) * 1982-09-30 1985-03-19 International Business Machines Corporation Memory address permutation apparatus
US4916603A (en) * 1985-03-18 1990-04-10 Wang Labortatories, Inc. Distributed reference and change table for a virtual memory system
WO1988009995A1 (en) * 1987-06-02 1988-12-15 Hughes Aircraft Company Pipeline memory structure
US5587962A (en) * 1987-12-23 1996-12-24 Texas Instruments Incorporated Memory circuit accommodating both serial and random access including an alternate address buffer register
US5093807A (en) * 1987-12-23 1992-03-03 Texas Instruments Incorporated Video frame storage system
US5155834A (en) * 1988-03-18 1992-10-13 Wang Laboratories, Inc. Reference and change table storage system for virtual memory data processing system having a plurality of processors accessing common memory
KR910008413B1 (ko) * 1989-07-21 1991-10-15 삼성전자 주식회사 메모리 용량 확장장치
IL96808A (en) * 1990-04-18 1996-03-31 Rambus Inc Introductory / Origin Circuit Agreed Using High-Performance Brokerage
US6751696B2 (en) 1990-04-18 2004-06-15 Rambus Inc. Memory device having a programmable register
US5243703A (en) * 1990-04-18 1993-09-07 Rambus, Inc. Apparatus for synchronously generating clock signals in a data processing system
US5576554A (en) * 1991-11-05 1996-11-19 Monolithic System Technology, Inc. Wafer-scale integrated circuit interconnect structure architecture
EP0541288B1 (de) * 1991-11-05 1998-07-08 Fu-Chieh Hsu Redundanzarchitektur für Schaltungsmodul
US5831467A (en) * 1991-11-05 1998-11-03 Monolithic System Technology, Inc. Termination circuit with power-down mode for use in circuit module architecture
US5498990A (en) * 1991-11-05 1996-03-12 Monolithic System Technology, Inc. Reduced CMOS-swing clamping circuit for bus lines
AU4798793A (en) * 1992-08-10 1994-03-03 Monolithic System Technology, Inc. Fault-tolerant, high-speed bus system and bus interface for wafer-scale integration
US5655113A (en) 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
US6609169B1 (en) 1999-06-14 2003-08-19 Jay Powell Solid-state audio-video playback system
US6567290B2 (en) * 2000-07-05 2003-05-20 Mosaic Systems, Inc. High-speed low-power semiconductor memory architecture
US20050041453A1 (en) * 2003-08-22 2005-02-24 Brazis Paul W. Method and apparatus for reading and writing to solid-state memory
US8130528B2 (en) 2008-08-25 2012-03-06 Sandisk 3D Llc Memory system with sectional data lines
US8279650B2 (en) 2009-04-20 2012-10-02 Sandisk 3D Llc Memory system with data line switching scheme

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1218406A (en) * 1968-07-04 1971-01-06 Ibm An electronic data processing system
US3633175A (en) * 1969-05-15 1972-01-04 Honeywell Inc Defect-tolerant digital memory system
US3753244A (en) * 1971-08-18 1973-08-14 Ibm Yield enhancement redundancy technique
US3781826A (en) * 1971-11-15 1973-12-25 Ibm Monolithic memory utilizing defective storage cells
US3753242A (en) * 1971-12-16 1973-08-14 Honeywell Inf Systems Memory overlay system
US3755791A (en) * 1972-06-01 1973-08-28 Ibm Memory system with temporary or permanent substitution of cells for defective cells
US3803560A (en) * 1973-01-03 1974-04-09 Honeywell Inf Systems Technique for detecting memory failures and to provide for automatically for reconfiguration of the memory modules of a memory system
US3821715A (en) * 1973-01-22 1974-06-28 Intel Corp Memory system for a multi chip digital computer

Also Published As

Publication number Publication date
FR2215671B3 (de) 1976-11-19
GB1461245A (en) 1977-01-13
NL7401042A (de) 1974-07-30
FR2215671A1 (de) 1974-08-23
US3983537A (en) 1976-09-28

Similar Documents

Publication Publication Date Title
DE2404146A1 (de) Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem
DE2350225C2 (de)
DE69632424T2 (de) Server für kontinuierliche Daten und Datentransferschema für mehrfache gleichzeitige Datenzugriffe
DE2400161C2 (de)
DE3032630C2 (de) Halbleiterspeicher aus Speicherbausteinen mit redundanten Speicherbereichen und Verfahren zu dessen Betrieb
DE69023883T2 (de) Umkehrkreuzungsschalter mit verteilter Steuerung.
DE2617408B2 (de) Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie
DE2646163B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE3607092A1 (de) Speichermanagementsystem
DE2741886A1 (de) Datenuebertragungseinrichtung
DE4423949A1 (de) E/A-Hilfssystem und Exklusiv-Steuerverfahren, Datenspeicherverfahren und Speicherinitialisierungsverfahren in einem E/A-Hilfssystem
DE2926322C2 (de) Speicher-Subsystem
DE2715751B2 (de) Speicheranordnung mit defekten Modulen
DE3015875A1 (de) Speicherzugriffssystem und verfahren fuer einen zugriff zu einem digitalen speichersystem
DE69329282T2 (de) Festkoerperspeichervorrichtung
DE3128729A1 (de) Halbleiter-speichersystem
DE2400064A1 (de) Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem
DE2712575A1 (de) Assoziatives speichersystem
DE2544945A1 (de) Mikroprocessor
EP0109981B1 (de) Ausfallgesicherte Datenverarbeitungsanlage
DE3855550T2 (de) Redundanz für Schaltungskomplex
DE3048414A1 (de) "schaltungsanordnung fuer eine datenverarbeitungsanlage"
DE3024153A1 (de) Speicher-subsystem
EP0009625B1 (de) Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher