[go: up one dir, main page]

DE2609064C3 - Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit) - Google Patents

Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit)

Info

Publication number
DE2609064C3
DE2609064C3 DE19762609064 DE2609064A DE2609064C3 DE 2609064 C3 DE2609064 C3 DE 2609064C3 DE 19762609064 DE19762609064 DE 19762609064 DE 2609064 A DE2609064 A DE 2609064A DE 2609064 C3 DE2609064 C3 DE 2609064C3
Authority
DE
Germany
Prior art keywords
data
register
bit
address
word
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.)
Expired
Application number
DE19762609064
Other languages
German (de)
Other versions
DE2609064B2 (en
DE2609064A1 (en
Inventor
Karl-Erwin 2080 Pinneberg Grosspietsch
Werner Dipl.-Ing. Dr.Rer. Nat. 5060 Bergisch Gladbach Kluge
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.)
GESELLSCHAFT fur MATHEMATIK und DATENVERARBEITUNG MBH 5300 BONN
Original Assignee
GESELLSCHAFT fur MATHEMATIK und DATENVERARBEITUNG MBH 5300 BONN
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 GESELLSCHAFT fur MATHEMATIK und DATENVERARBEITUNG MBH 5300 BONN filed Critical GESELLSCHAFT fur MATHEMATIK und DATENVERARBEITUNG MBH 5300 BONN
Priority to DE19762609064 priority Critical patent/DE2609064C3/en
Publication of DE2609064A1 publication Critical patent/DE2609064A1/en
Publication of DE2609064B2 publication Critical patent/DE2609064B2/en
Application granted granted Critical
Publication of DE2609064C3 publication Critical patent/DE2609064C3/en
Expired 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

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Description

Die Erfindung betrifft eine Schaltungsanordnung nach dem Oberbegriff des Anspruches 1.The invention relates to a circuit arrangement according to the preamble of claim 1.

Für den wirtschaftlichen Einsntz von Digitalrechnern und die korrekte Ausführung der vom BenutzerFor the economical use of digital computers and the correct execution of the by the user vorgeschriebenen Operationen ist ein hohes Maß an Verfügbarkeit und Integrität unerläßliche Voraussetzung! Das wird trotz endlicher Lebenszeit und Störanfälligkeit der großen Zahl elektronischer Schaltkreise und Speicherelemente, aus denen der Rechnerprescribed operations, a high level of availability and integrity is an essential requirement! That will be despite the finite lifetime and The large number of electronic circuits and storage elements that make up the computer are susceptible to failure

h·) aufgebaut ist, durch Redundant in Form zusätzlicher Schaltkreise oder Codes erreicht, die es ermöglichen, sporadische Fehlfunktionen oder permanente Defekte der einzelnen Hardwarekomponenten zu diagnostizie- h

ren und die dadurch verursachten Fehler zu korrigieren bzw, von vornherein zu maskieren.and to correct the errors caused thereby or to mask them from the start.

Es ist bekannt (W, W, Peterson, PrOfbare und korrigierbare Codes, R, Oldenburg Verleg, München/ Wien, 1967), zur Überwachung sowohl von Datenspeicher- und Transportfunktionen als auch von einigen datenverändernden Funktionen fehlererkennende Codes einzusetzen, die das Auftreten eines Bitmusterfehlers während des normalen Programmbetriebes eines Rechners erkennen und die Ausführung eines Diagnoseprogrammes veranlassen, das die fehlerhaft arbeitende Komponente lokalisiert, so daß z.B. ein manueller Austausch vorgenommen werden kann.It is known (W, W, Peterson, PrOfbare and correctable codes, R, Oldenburg Verleg, Munich / Vienna, 1967), for monitoring both data storage and transport functions as well as error-detecting codes from some data-changing functions to prevent the occurrence of a bit pattern error during normal program operation of a Recognize the computer and the execution of a diagnostic program cause that localizes the faulty component, so that e.g. a manual Exchange can be made.

Es ist weiterhin bekannt (W. W. Peterson, Prüfbare und korrigierbare Codes, R. Oldenburg Verlag, München/Wien, 1967), insbesondere die bei der Datenspeicherung bzw. beim Transport verursachten Bitmusterfehler mit Hilfe fehlerkorrigieirender Codes sofort zu beheben und damit die Fehllerursache zu maskieren.It is also known (W. W. Peterson, Verifiable and Correctable Codes, R. Oldenburg Verlag, Munich / Vienna, 1967), especially those caused by data storage and transport Bit pattern errors with the help of error-correcting codes to be corrected immediately and thus to mask the cause of the error.

Die Anwendung fehlererkennender bzw. fehlerkorrigierender Codes ist unerläßlich, um auch sporadisch auftretende Bitmusterfehler zu behandeln, die nicht unbedingt auf permanentdefekte Harwatrekomponenten zurückzuführen sind. Insbesondere fehlerkcmgierende Codes bleiben jedoch wegen des Aufwandes an Codes und Korrekturschaltungen auf die Korrektur von 1-Bit-Fehlern begrenzt, d. h, es können nur verhältnismäßig geringe Zuverlässigkeitsverbesserungen erreicht werden.The use of error-detecting or error-correcting codes is essential in order to be able to do so sporadically to handle occurring bit pattern errors that are not necessarily due to permanently defective Harwatre components are due. In particular, error-reporting codes remain due to the effort involved Codes and correction circuits limited to the correction of 1-bit errors, i. h, it can only be proportionate small improvements in reliability can be achieved.

Zur Erzielung einer hohen Rechnungszuverlässigkeit gegenüber permanenten Komponentendefekten ist die Methode der triple-modularen Redundanz bekannt (W. H. P i e r c e, Failure-Tolerant Computer Design, Academic Press, New York/London, 1965.) Sie beruht darauf, drei gleichartige Komponenten unter völlig identischen Bedingungen zu betreiben und mit Hilfe einer Voterschaltung die Ausgänge der drei Komponenten zu bewerten. Sind die Bitmuster zumindest zweier der drei Komponentenausgänge gleich, dann wird dieses Bitmuster als korrekt betrachtet und weiterverarbeitet. Diesem Verfanren kann wegen des extrem hohen Hardwareaufwandes nur eine begrenzte Bedeutung zukommen. Zur Erzielung höchster Zuverlässigkeiten ist die »standby«-Redundanz bekannt (IEEE-Transactions on Computers, Vol. C-20, No. 11, Nov. 1971, Seiten 1312-1322). Hierbei werden zusätzlich zu den in Betrieb befindlichen Komponenten identische Reservekomponenten in Bereitschaft gehalten, die die Funktion ausfallender Komponenten übernehmen können.In order to achieve a high level of invoice reliability against permanent component defects, the Method of triple-modular redundancy known (W. H. P i e r c e, Failure-Tolerant Computer Design, Academic Press, New York / London, 1965.) It is based on three similar components under completely identical ones Conditions to operate and with the help of a Voterschaltung the outputs of the three components evaluate. If the bit patterns of at least two of the three component outputs are the same, then this bit pattern becomes considered correct and processed further. This misalignment can be because of the extremely high Hardware costs are only of limited importance. To achieve the highest levels of reliability "standby" redundancy is known (IEEE transactions on Computers, Vol. C-20, no. 11, Nov. 1971, pp 1312-1322). Here, in addition to the components in operation, identical reserve components are used kept ready to take over the function of failing components.

Diese Form der Redundanz findet besonders beim Entwurf fehlertoleranter Halbleiterspeicher Anwendung. So wird z. B. in der US-PS 38 98 443 und in der DE-OS 23 25 137 vorgeschlagen, für eine bestimmte Anzahl von Speicherkomponenten jeweils eine Reservekomponente vorzusehen. Bei Erkennung eines Fehlers in einer der in Betrieb befindlichein Komponenten wird diese logisch abgeschaltet und die Reservekomponente über ein Kreuzschienenschaltwerk logisch in der Position der defekten Komponente abgeschaltet.This form of redundancy is particularly useful in the design of fault-tolerant semiconductor memories. So z. B. in US-PS 38 98 443 and in DE-OS 23 25 137 proposed to provide a reserve component for a certain number of memory components. If a fault is detected in one of the components in operation, it is logically switched off and the reserve component is logically switched off in the position of the defective component via a crossbar switchgear.

Nach einem aus der US-PS 39 34 237 bekannten Verfahren wird »standby«-Redundanz für einen Speicher dadurch . ealisiert, daß ein Zusatzspeicher vorgesehen ist, in den ι lit Hilfe eines Adreßumsetzmechanismus Adreßbereiche des fehlerhafte Konponenicn enthaltenden Speichers umgelagert werden.According to a method known from US Pat. No. 3,934,237, “standby” redundancy is used for a memory through this . ealisiert that an additional memory is provided, in the ι lit help of an address conversion mechanism Address ranges of the incorrect Konponenicn containing Storage can be migrated.

Die Nachteile dieser bekannten Einrichtungen bestehen insbesondere darin, daß zusätzliche Speicherkapazität in Form zusätzlicher Speichermodule (Bitscheiben) oder in Form eines zusätzlichen Speichers bereitgehalten werden muß und daß ein relativ aufwendiges Schaltwerk erforderlich ist, mit dessen Hilfe eine Reservekomponente in die Position einer fehlerbehafteten Komponente geschaltet werden kann, und daß dieses Schaltwerk besonders aufwendig und komplex sein muß, wenn der Ausfall mehrerer Komponenten durch Bereitstellung einer entsprechenden Anzahl vonThe disadvantages of these known devices are in particular that additional memory capacity in the form of additional memory modules (bit slices) or in the form of an additional memory must be kept ready and that a relatively complex switching mechanism is required, with the help of which a reserve component is switched to the position of a faulty component can be, and that this switching mechanism must be particularly expensive and complex if the failure of several components by providing a corresponding number of

ίο Reservekomponenten kompensiert werden soll.ίο reserve components are to be compensated.

Im Zusammenhang mit der Entwicklung von Multiprozessor-Rechenanlagen ist eine weitere Methode zur Erzielung einer hohen Toleranz gegenüber Hardwaredefekten vorgeschlagen worden, die als »gracefulIn connection with the development of multiprocessor computing systems is another method of achieving a high tolerance for hardware defects has been proposed as "graceful

is degradation« bezeichnet wird. Sie besteht darin, in einem aus mehreren identischen Prozessoren und Speichersegmenten aufgebauten System diejenigen Prozessoren und Speichersegmente, in denen permanente Hardwaredefekte auftreten, nichs mehr zuzuweisen bzw. die ihnen ursprünglich vom System zugewiesenen Funktionen auf gleichartige intakte Module zu übertragen und damit die insgesamt /Oir Verfügung stehende Hardwarestruktur zu reduzieren. Dies hat zwar eine Verminderung der Rechenleistung — gegebenenfalls bis zum Austausch der defekten Module — zur Folge, führt jedoch nicht zu einem vollständigen Systemau'ifall.is degradation «. It consists in a system made up of several identical processors and memory segments Processors and memory segments in which permanent hardware defects occur can no longer be allocated or the functions originally assigned to them by the system to identical, intact modules transferred and thus the total / oir available to reduce the standing hardware structure. Although this has a reduction in computing power - possibly up to the replacement of the defective modules - the consequence, but does not lead to a complete one System failure.

Das Prinzip des »graceful degradation« ist übertragbar auf die reguläre zweidimensionale zellulare Struktur des Arbeitsspeichers oder die eindimensionale Bitscheibenstruktur des Prozessors einer Rechetianlage, wenn geeignete Einrichtungen dafür vorhanden sind, defekte Zellen oder Bitscheiben logisch abzuschalten und deren Funktionen durch intakte Zellen bzw. Bitscheiben des gleichen Typs ausführen zu lassen. Dadurch wird es möglich, »graceful degradation« auch in Einprozessorsystemen mit unsegmentiertem Arbeitsspeicher durchzuführen. Es handelt sich dabei um ein Emulationsproblem, bei dem die vollständige Struktur des Rechners im Falle von Defekten in Speicherzellen bzw. in Prozeusorbitscheiben durch geeignete Rekonftguration auf eine reduzierte Struktur emulgiert wird, und das demnach auf der Ebene der Mikroprogrammierung gelöst werden muß.The principle of "graceful degradation" can be transferred to the regular two-dimensional cellular structure of the main memory or the one-dimensional bit slice structure of the processor of a computing system, if suitable facilities are available to logically switch off defective cells or bit slices and their To have functions carried out by intact cells or bit slices of the same type. This is how it becomes possible to carry out "graceful degradation" in single-processor systems with unsegmented main memory. This is an emulation problem in which the complete structure of the computer is in the In the event of defects in memory cells or in process orbit slices by means of suitable reconfiguration on a reduced structure is emulsified, and that is therefore solved at the level of microprogramming must become.

Der Erfindung liegt die Aufgabe zugrunde, die Reduzierung einer vorgegebenen Rechnerstruktur auf fehlerfrei arbeitende Komponenten mit Hilfe mikroprogrammierter Rekonfiguration durch geeignete schaltungstechnische Ergänzungen im Rechner derart zuThe invention is based on the task of reducing a given computer structure error-free working components with the help of micro-programmed Reconfiguration through suitable circuitry additions in the computer in such a way

so unterstützen, daß der zusätzliche zeitliche Aufwand für die Durchführung fehlerkorrigierender Mikrooperationen möglichst gering gehalten und der Hardwareaufwand gegenüber bekannten Einrichtungen der erfindungsgemäßen Art wesentlich herabgesetzt wird.support so that the additional time required to carry out error-correcting micro-operations kept as low as possible and the hardware expenditure compared to known devices of the invention Kind is significantly reduced.

Dies* Aufgabe wird erfindungsgemäß durch die im kennzeichnenden Teil des Anspruches 1 angegebene Schaltungsanordnung gelöst Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet
Die Vorteile der erfindungsgemäßen Schaltungsan-Ordnung bestehen darin, daß die für die Fehlerkorrektur notwendigen Zerlegungen von Datenworten in einzelne Bits oder Bitfelder und deren korrekte Positionierung beim Einsetzen in ein zweites Datenwort bzw. das Zusammensetzen von Datenworten aus einzelnen Bits
According to the invention, this object is achieved by the circuit arrangement specified in the characterizing part of claim 1. Further developments of the invention are characterized in the subclaims
The advantages of the circuit arrangement according to the invention are that the breakdown of data words into individual bits or bit fields necessary for error correction and their correct positioning when inserted into a second data word or the assembly of data words from individual bits

e>-> oder Bitfeldern mit einem Minimum an zusätzlichen Mikrooperationsschritten vorgenommen werden kann und daß durch die Anordnung der Bitfeldtransfereinheit an der Schnittstelle zwischen Arbeitsspeicher unde> -> or bit fields with a minimum of additional Micro-operation steps can be made and that by the arrangement of the bit field transfer unit at the interface between main memory and

Prozessor beim Datentransfer Fehler, die im jeweiligen Quellenmodul entstehen, korrigiert werden können bevor das Datenwcirt dem Senkenmodul übergeben wird und Datenworte vor Übergabe an ein defektes Senkenmodul dem Defekt angepaßt werden können.Processor during data transfer errors that occur in the respective source module can be corrected before the data host is transferred to the sink module and data words before transfer to a defective one Sink module can be adapted to the defect.

Ein Ausfiihrungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden näher beschrieben.An exemplary embodiment of the invention is shown in Drawing shown and is described in more detail below.

Es zeigtIt shows

F i g. 1 eine schematische Darstellung zur Korrektur von Bitebenendefekten im Arbeitsspeicher,F i g. 1 shows a schematic representation of the correction of bit plane defects in the main memory,

Fig. 2 ein Blockdiagramm der Bitfeldtransfereinheit und deren Anordnung an der Schnittstelle zwischen Prozessor und Arbeilsspeicher.Fig. 2 is a block diagram of the bit field transfer unit and its arrangement at the interface between Processor and memory.

Zur Verdeutlichung der Arbeitsweise der erfindungsgemäßen Schaltungsanordnung wird das Prinzip der mikroprogrammierten Rekonfiguration anhand der Korrektur von Defekten im Arbeitsspeicher und der Korrektur von Prozessordefekten ausführlich erläutert.To illustrate the operation of the circuit arrangement according to the invention, the principle of micro-programmed reconfiguration based on the correction of defects in the main memory and the Correction of processor defects explained in detail.

Grundbaustein eines Arbeitsspeicher ist im allgemeinen ein Modul, bestehend aus einer Anordnung von 2* binären Speicherzellen mit aufeinanderfolgenden Adressen, z. B. eine Kernspeichermatrix oder ein Halbleiterspeicherchip (MOS). Ein Speicher von 2" (N>k) Worten Kapazität und 2" (3<n<N) Bits Wortlänge ist demnach aufgebaut aus 2N~k Blöcken von 2" dieser Module, die den gleichen Adreßbereich überdecken. Die Adreßdekodierlogik besteht dementsprechend aus zwei Stufen, von denen die erste den jeweiligen Speicherblock und die zweite das Speicherwort innerhalb eines Blockes identifiziert. Eine Adreßsammelleitung bestehend aus N Leitungen führt den Adreßcode der Adreßdecodierlogik zu, und eine Datensammelleitung von 2" Leitungen übernimmt den Datentransport zwischen den Speicherzellen und dem Datenpufferregister des Speichers.The basic building block of a main memory is generally a module consisting of an arrangement of 2 * binary memory cells with consecutive addresses, e.g. B. a core memory matrix or a semiconductor memory chip (MOS). A memory of 2 "(N> k) words of capacity and 2" (3 <n <N) bits of word length is accordingly made up of 2 N ~ k blocks of 2 "of these modules, which cover the same address range two stages, of which the first identifies the respective memory block and the second identifies the memory word within a block. An address bus line consisting of N lines supplies the address code to the address decoding logic, and a data bus line of 2 "lines takes over the data transport between the memory cells and the data buffer register of the Memory.

Entsprechend dieser physikalischen Struktur des Speichers sind drei idealisierte Defekte, auf die alle real auftretenden Defekte zurückgeführt werden können, zu unterscheiden.Corresponding to this physical structure of the memory there are three idealized defects, all of which are real occurring defects can be traced back to distinguish.

1) Der Defekt eines Speichermoduls verursacht den Ausfall eines Bitebenensegmentes in einem Adreßbereich zwischen den Adressen g ■ 2* und (g + 1) ■ 2*—1.1) The defect of a memory module causes the failure of a bit plane segment in an address area between the addresses g ■ 2 * and (g + 1) ■ 2 * -1.

2) Der Defekt einer Leitung innerhalb der Datensammelleitung verursacht den Ausfall der entsprechenden kompletten Bitebene.2) The defect of a line within the data bus causes the failure of the corresponding one complete bit plane.

3) Der Defekt einer Leitung innerhalb der Adreßsammelleitung verursacht den Ausfall von insgesamt 2N~l Speicherzellen, die in einem periodischen Muster über ^.en gesamten Adreßbereich verteilt sind.3) The defect of a conduit within the address bus leads to the failure of a total of 2 ~ N l memory cells .en in a periodic pattern over ^ entire address area are distributed.

Diagnoseverfahren zur Erkennung und Lokalisierung dieser Defekte sind aus der DE-OS 23 25137 und der US-PS 38 98 443 bekannt So ist es z. B. zweckmäßig, nachdem ein Hardwaredefekt durch einen fehlererkennenden Code erkannt worden ist, den gesamten Speicher bzw. ein Speichersegment dadurch zu testen, daß ein Diagnoseprogramm zunächst in einem ersten Durchlauf jede Speicherwortzelle mit ihrer eigenen binär codierten Adresse beschreibt und anschließend alle Zellinhalte wieder ausliest, und dann in einem zweiten Durchlauf je ZeDe mit ihrer komplementären Adresse beschreibt und anschließend ebenfalls alle Zellinhalte wieder ausliest Auf diese Weise werden alle Speicherwortzellen mit jeweils eindeutigen Bitmustern so getestet, daß jede Binärstelle eines Speicherwortes sowohl mit »0« als auch mit »I« beschrieben wird. Der bitweise Vergleich der jeweils aus den Speichern gelesenen Codes mit den zugehörigen Adreßcodes lokalisiert nicht nur fehlerhafte Binärstellen, sondern erkennt und lokalisiert auch eine fehlerhafte Adressierung. Diagnostic methods for the detection and localization of these defects are known from DE-OS 23 25137 and US-PS 38 98 443. B. expedient, after a hardware defect has been recognized by an error-detecting code, to test the entire memory or a memory segment in that a diagnostic program first describes each memory word cell with its own binary-coded address in a first run and then reads out all cell contents again, and then describes in a second pass per ZeDe with its complementary address and then also all cell content again reads in this way all of the memory word cells are tested, each with unique bit patterns that each bit position of a memory word with both "0" also described as having "I" will. The bit-by-bit comparison of the codes read from the memories with the associated address codes not only localizes incorrect binary digits, but also detects and localizes incorrect addressing.

Die grundsätzliche Methode zur Korrektur der beiden ersten Defekte besteht darin, für Speicherbereiche mit defekten Bitebenen spezielle KorrekturbitfelderThe basic method for correcting the first two defects is for memory areas special correction bit fields with defective bit planes

ίο in einem anderen geeigneten Speicherbereich anzulegen und dort diejenigen Bits kompletter Datenworte, die mit den defekten Bitebenen koinzidieren, abzuspeichern. Entsprechend muß ein aus einem solchen Speicherbereich gelesenes Datenwort durch Bits aus dem Korrekturbitfeld vervollständigt werden, und aus einem in diesen Speicherbereich zu schreibenden Datenwort müssen die fehlerkoinzidenten Bits extrahiert und separat in das Korrekturbitfeld geschrieben werden.ίο to be created in another suitable memory area and there to store those bits of complete data words that coincide with the defective bit planes. Correspondingly, a data word read from such a memory area must be defined by bits the correction bit field, and from a to be written into this memory area In the data word, the bits that coincide with the error must be extracted and written separately into the correction bit field will.

2n Im Falle des Defektes von Bitebenensegmenten der Länge 2* kann davon ausgegangen werden, daß im Speicher noch Blöcke der Länge 2* vorhanden sind, in denen komplette Datenworte fehlerfrei abgespeichert werden können. Ein oder mehrere zusammenhängende Blöcke dieser Art werden benutzt als Korrekturbitregion, in der Korrekturbitfelder auf folgende Weise angelegt werden:2n In the case of a defect in bit plane segments of the Length 2 * it can be assumed that there are still blocks of length 2 * in the memory, in which complete data words can be saved without errors. One or more contiguous Blocks of this kind are used as a correction bit region in which correction bit fields are used in the following manner be created:

Der Defekt eines Speichermoduls im Adreßbereich g- 2* ... (g ■ 1) · 2*-' betrifft eine SpeicherkapazitätThe defect of a memory module in the address range g- 2 * ... (g ■ 1) · 2 * - 'affects a memory capacity

jo von 2* Bits, die in einem Korrekturbitfeld von 2k~" Worten untergebracht werden kann.jo of 2 * bits, which can be accommodated in a correction bit field of 2 k ~ "words.

Zur Vereinfachung der Adressierung der Korrekturbitfelder wird unabhängig von der Anzahl der tatsächlich auftretenden Bitsegmentdefekte für jeden der 2N~k physikalischen Speicherblöcke ein Korrekturbitfeld in einer zusammenhängenden Speicherregion von 2h (h = 0, 1, 2, ...) physikalischen Blöcken, deren Anfangsadresse ein ganzzahliges Vielfaches von 2A+* sein sollte, reserviert. Beginnend an dieser Basisadresse wird der nachfolgende Adreßraum in 2N~k Felder von 2*-" Speicherworten derart unterteilt, daß das /-te Feld die Korrekturbits des /-ten physikalischen Speicherblocks enthält und, genauer, daß das y-te Wort im /-ten Feld und darin das /-te Bit das fehlerkoinzidente Bit des unter der AdresseTo simplify the addressing of the correction bit fields, regardless of the number of bit segment defects actually occurring, a correction bit field in a contiguous memory region of 2 h (h = 0, 1, 2, ...) physical blocks is used for each of the 2 N ~ k physical memory blocks Start address should be an integer multiple of 2 A + *, reserved. Starting at this base address, the following address space is subdivided into 2 N ~ k fields of 2 * - "memory words in such a way that the / -th field contains the correction bits of the / -th physical memory block and, more precisely, that the y-th word in / -th field and in it the / -th bit the error-coincident bit of the under the address

abgespeicherten Datenwortes enthält Dadurch kann die Adresse des Korrekturbits direkt aus der Adresse des Datenwortes selbst hergeleitet werden.This means that the address of the correction bit can be taken directly from the address of the data word itself.

Wie in F i g. 1 dargestellt ist, sind die ersten N—k Bits der Adresse identisch mit der Adresse des Korrekttirbitfeldes relativ zur Basis der Korrekturbitregion CBR, die nachfolgenden k—n Bits adressieren das Wort inner halb des Korrekturbitfeldes CBF, und die letzten π Bits adressieren das Bit innerhalb des Wortes. As in Fig. 1, the first N-k bits of the address are identical to the address of the correction bit field relative to the base of the correction bit region CBR, the subsequent k-n bits address the word within the correction bit field CBF, and the last π bits address the bit within of the word.

Zur Durchführung dieses Korrekturverfahrens ist es außerdem notwendig, an geeigneter dritter Stelle im Speicher oder in einem separaten, schnellabfragbarenIn order to carry out this correction procedure, it is also necessary, in a suitable third place in the Storage or in a separate, quickly retrievable

μ Assoziativspeicher eine Fehlertabelle anzulegen, die als Eintragungen die Adressen der physikalischen Speicherblöcke mit Bitebenendefekten sowie die jeweiligen Bitpositionen der defekten Bitebenen enthält Neue Eintragungen in die Tabelle werden durchμ Associative memory to create an error table, which as Entries the addresses of the physical memory blocks with bit plane defects as well as the contains the respective bit positions of the defective bit planes. New entries in the table are made by

6'> das Diagnoseprogramm vorgenommen, das nach Erkennung eines Fehlers aktiviert wird, um die fehlerhafte Bitebene und den betroffenen Adreßbereich zu lokalisieren. Die Korrektur wird wie folgt ausgeführt:6 '> carried out the diagnostic program following Error detection is activated to identify the faulty bit plane and the affected address area to locate. The correction is carried out as follows:

Soll ζ. B. ein Datenwort unter der physischen Adresse ρ aus dem Speicher ausgelesen werden, so wird zunächst ein normaler Speicherzugriff durchgeführt. Mit Hilfe des Blockadreßt'.-ils / der Adresse ρ wird die Fehlertabelle abgesucht, um festzustellen, ob die erzeugte Adresse in einem durch Bitebenendefekte beeinträchtigten Speicherbereich liegt. Ist dies der Fall, so wird zunächst das unter der Adresse ρ aus dem Speicher gelesene Datenwort außerhalb des Speichers in einem geeigneten zweiten Register zwischengespeichert. Danach wird ein zweiter Speicherzupriff durchgeführt mit einer Adresse, die durch Adressieren der höchstwertigen N-n Bits der Adresse ρ auf die niedrigstwertigen N — n Bits der Basisadresse der Korrekturbitregion CBR gebildet wird. Aus dem unter dieser Adresse ausgelesenen Wort, das in einem geeigneten ersten Register außerhalb des Speichers zwischengespeichert ist, wird mit Hilfe der niedrigstwertigen π Bits der Adresse ρ die Position des Korrekturbits bestimmt. Eine geeignete Vorrichtung extrahiert das Korrekturbit aus dem ersten Register und setzt es in die Bitposition des in dem zweiten Register enthaltenen Datenwortes ein, die durch die entsprechende Eintragung in der Fehlertabelle bestimmt ist.Should ζ. If, for example, a data word is read from the memory at the physical address ρ, a normal memory access is first carried out. With the help of the block address' .- ils / the address ρ, the error table is searched in order to determine whether the generated address is in a memory area impaired by bit plane defects. If this is the case, the data word read from the memory under the address ρ is initially temporarily stored outside the memory in a suitable second register. A second memory access is then carried out with an address which is formed by addressing the most significant Nn bits of the address ρ to the least significant N-n bits of the base address of the correction bit region CBR . From the word read out at this address, which is temporarily stored in a suitable first register outside the memory, the position of the correction bit is determined with the aid of the least significant π bits of the address ρ. A suitable device extracts the correction bit from the first register and inserts it into the bit position of the data word contained in the second register, which is determined by the corresponding entry in the error table.

Das zweite Datenregister enthält nun das korrekte Datenwort, das auf dem üblichen Wege weiterverarbeitet werden kann.The second data register now contains the correct data word, which can be further processed in the usual way.

Liegt die Adresse ρ in einem fehlerfreien Bereich, d. h., liegt keine Eintragung in der Fehlertabelle vor, so ist das unter der Adresse ausgelesene Datenwort fehlerrrei. Die beschriebene Zwischenspeicherung und der Zugriff auf die Korrekturbitregion unterbleiben, und das Datenwort wird direkt weiterverarbeitet.If the address ρ is in an error-free area, ie if there is no entry in the error table, then the data word read out under the address is error r rei. The described intermediate storage and access to the correction bit region are omitted, and the data word is processed further directly.

Beim Abspeichern eines Datenwortes unter der Adresse ρ wird ebenfalls zunächst ein normaler Speicherzugriff durchgeführt. Gleichzeitig wird in jedem Fall das Datenwort in dem außerhalb des Speichers befindlichen ersten Register zwischengespeichert. Außerdem werden wiederum mit Hilfe des Blockadreßteils /der Adresse ρ die Eintragungen in der Fehlertabelle überprüft und, falls eine fehlerhafte Speicherregion vorliegt, wird in einem zweiten Speicherzugriff auf die bereits beschriebene Weise das entsprechende Korrekturbitwort ausgelesen und in das zweite Register außerhalb des Speichers gebracht. Aus dem Datenwort des ersten Registers wird nun das fehlerkoinzidente Bit extrahiert und an die vorgesehene Binärstelle in dem im zweiten Register enthaltenen Korrekturbitwort eingesetzt. Danach wird der neue Inhalt des zweiten Registers wieder unter seiner ursprünglichen Adresse in der Korrekturbitregion abgespeichert.When a data word is stored under the address ρ , a normal memory access is also carried out first. At the same time, the data word is temporarily stored in the first register located outside of the memory in each case. In addition, the entries in the error table are checked again with the help of the block address part / address ρ and, if there is an incorrect memory region, the corresponding correction bit word is read out in a second memory access in the manner already described and placed in the second register outside of the memory. The error-coincident bit is now extracted from the data word of the first register and inserted into the provided binary position in the correction bit word contained in the second register. The new content of the second register is then stored again under its original address in the correction bit region.

Beim vollständigen Ausfall einer Bitebene muß die angegebene Korrekturmethode insoweit modifiziert werden, als in diesem Falle nirgendwo im Speicher ein vollständiges Datenwort abgespeichert und demzufolge die Korrekturbitfelder in der bisherigen Form nicht angelegt werden können. Deshalb werden zum Abspeichern der Korrekturbitfelder nur Speicherhalbworte benutzt, und zwar linke Halbworte, wenn sich der Bitebenenausfall in der rechten Worthälfte befindet und umgekehrt. Dadurch wird zwar der für die gesamte Korrekturbitregion benötigte Adreßraum verdoppelt, aber der Adressierungsmechanismus bleibt im wesentlichen erhalten.In the event of a complete failure of a bit plane, the specified correction method must be modified to this extent are, as in this case nowhere in the memory a complete data word stored and consequently the correction bit fields cannot be created in their previous form. Therefore, only memory half-words are used to store the correction bit fields is used, namely left half-words if the bit plane failure is in the right half of the word and vice versa. This doubles the address space required for the entire correction bit region, but the addressing mechanism remains essentially the same.

Der Defekt einer Leitung innerhalb der AdreBsammelleitung kann auf ähnliche Weise korrigiert werden. Da der verfügbare Adreßraum unabhängig von derThe defective line within the address bus can be corrected in a similar way. Since the available address space is independent of the Bitposition des Defektes auf die Hälfte zusammenschrumpft, wird ein Pseudoadreßraum zwischen den Adressen 0 und 2^-1 von der Speicherverwaltung vergeben, d. h. alle Adressen, deren höchstwertigstes Bit eine 0 enthält.Bit position of the defect shrinks to half, a pseudo address space between the addresses 0 and 2 ^ -1 is assigned by the memory management, ie all addresses whose most significant bit contains a 0.

Dieser Pseudoadreßraum kann abgebildet werden auf den tatsächlich infolge des Defektes noch verfügbaren physischen Adreßraum, indem das Adreßbit, das mit der defekten Adreßleitung koinzidiert, in die höchstwertigeThis pseudo address space can be mapped to the one that is actually still available as a result of the defect physical address space by converting the address bit that coincides with the defective address line into the most significant

ίο Adreßbitposition eingesetzt wird, bevor der Speicher adressiert wird, falls die defekte Adreßleitung nicht ohnehin mit dem höchstwertigen Bit zusammenfällt.ίο address bit position is used before memory is addressed if the defective address line does not coincide with the most significant bit anyway.

Den Korrekturmethoden für diese drei Arten von Speicherdefekten ist gemeinsam, daß ein Bit aus einerThe correction methods for these three types of memory defects have in common that one bit from one geeignet spezifizierten Bitposition eines ersten Datenwortes extrahiert und in eine ebenfalls spezifizierte Bitposition eines zweiten Datenwortes eingesetzt wird. Bei Defekten in mehreren Bitebenen kann dies mehrere Bitpositionen betreffen. So ist es auch vorstellbar, dieappropriately specified bit position of a first data word is extracted and converted into a likewise specified Bit position of a second data word is used. In the case of defects in several bit planes, this can be several Concern bit positions. So it is also conceivable that angegebene Methode auf dsr Basis von Halbbytes (zusammenhängende Felder von vier Bits), Bytes (Felder von acht Bits) oder Halbworten anzuwenden.specified method on a dsr basis of nibbles (contiguous fields of four bits), bytes (fields of eight bits) or half-words.

Prinzipiell die gleichen Methoden können auch benutzt werden, um die durch defekte Bitscheiben desIn principle, the same methods can also be used to resolve the issues caused by defective bit slices of the Prozessors hervorgerufenen Fehler zu korrigieren. Im Falle einer defekten Bitscheibe der arithmetisch/logischen Funktionseinheit kann z. B. bei logischen Operationen, die bitweise über die Operandendatenworte ausgeführt werden, zunächst die Operation wie üblichCorrect the error caused by the processor. In the case of a defective bit slice of the arithmetic / logical functional unit, z. B. with logical operations that are carried out bit by bit via the operand data words to perform the operation as usual ausgefüh rt werden, wobei in der der defekten Bitscheibe entsprechenden Binärstelle ein fehlerhaftes Bit im Resultatwort zu erwarten ist. Um dies zu korrigieren, kann die Operation z. B. mit um jeweils eine oder mehrere Binärstellen nach links oder rechts verschobebe executed, in which case the defective bit slice corresponding binary digit a faulty bit is to be expected in the result word. To correct this, the operation can e.g. B. with one or more binary digits to the left or right nenen Operanden wiederholt werden, so daß das in der ersten Operation mit der defekten Bitscheibe koinzidierende Bit nunmehr auf einer intakten Bitscheibe berechnet wird. Anschließend wird dieses Bit aus dem erhaltenen Resultatwort extrahiert und in die korrektenen operands are repeated so that that in the first operation with the defective bit slice, bits that coincide now on an intact bit slice is calculated. This bit is then extracted from the result word obtained and converted to the correct one Binärstelle des in der ersten Operation erhaltenen Resultatwortes eingesetzt Alternativ dazu ist möglich und bei arithmetischen Operationen mit Übertragbildung auch erforderlich, die Operationen jeweils auf Operandenhalbworten auszuführen, wobei die linkeBinary digit of the result word received in the first operation is used. Alternatively, this is possible and in arithmetic operations with carry formation it is also necessary to have the operations on To execute operand halfwords, with the left Hälfte der arithmetisch/logischen Einheit benutzt wird, wenn die defekte Bitscheibe sich in der rechten Hälfte befindet und umgekehrt Dabei wird es erforderlich, aus einem ersten Datenwort z. B. die rechte Worthälfte zu extrahieren und in einem zweiten Datenwort in die linkeHalf of the arithmetic / logical unit is used, if the defective bit slice is in the right half and vice versa a first data word z. B. to extract the right half of the word and in a second data word in the left

so Worthälfte einzusetzen.so to use half of the word.

Im Hinblick auf eine möglichst schnelle Ausführung der insgesamt zur Korrektur eines Defektes notwendigen Mikrooperationen ist es erforderlich, die Bit- oder Bitfeldtransfers möglichst innerhalb eines MaschmenWith a view to the fastest possible execution of the overall micro-operations required to correct a defect, it is necessary to set the bit or Bit field transfers if possible within a machine taktzyklus durch eine spezielle Bitfeldtransfereinheit abwickeln zu lassen. Wegen ihrer Doppelfunktion der Korrektur von Speicher- und Prozessordefekten ist diese Einheit zweckmäßigerweise an der Schnittstelle zwischen Prozessor und Speicher angeordnetclock cycle through a special bit field transfer unit unwind. Because of its dual function of correcting memory and processor defects this unit is expediently arranged at the interface between the processor and memory

Eine schematische Darstellung der Bitfeldtransfereinheit zeigt F i g. 2.A schematic representation of the bit field transfer unit is shown in FIG. 2.

Wesentliche Bestandteile der Bitfeldtransfereinheit bilden zwei Datenregister Rt und R 2, die im Ausführungsbeispiel jeweils 32 Binärstellen umfassen. Two data registers Rt and R 2, which in the exemplary embodiment each comprise 32 binary digits, form essential components of the bit field transfer unit.

Zur Ausführung eines Bh(feld)-transfers wird das Datenwort, aus dem das Bitfeld) extrahiert werden soll, in das Datenregister R1 und das Datenwort, in das das Bitfeld eingesetzt werden soll, in das Datenregister RI To carry out a Bh (field) transfer, the data word from which the bit field is to be extracted is placed in data register R 1 and the data word in which the bit field is to be inserted is placed in data register RI

geladen. Ein komplettes Datenwort kann über die 32 Leitungen umfassende Datensammelleitung Bl aus dem Datenpufferregister MBR des Speichers sowohl in das Datenregister R 1 als auch in das Datenregister R 2 geladen werden. Über eine zweite, ebenfalls aus 32 Leitungen bestehende Datensammelleitung B 4 kann das im Datenregister R 2 enthaltene Datenwort, sowohl in das SpeicheradreBregister MAR als auch in das Datenpufferregister MBR übertragen werden. Im Ausführungsbeispiel sind Einrichtungen dafür vorgesehen, sowohl einzelne Bits als auch Bytes (Felder von acht Bits) und Halbworte vom Datenregister R 1 in das Datenregister R 2 zu übertragen. Diese Einrichtungen sind eine Datenleitung dl, die aus einer einzelnen Leitung zur übertragung eines Bits besteht, eine Datensammelleitung B2, bestehend aus 8 Leitungen, über die ein Byte übertragen werden kann, und eine Datensammelleitung B3 zum Übertragen eines Halbwortes sowie ein 5 Bit Adreßregister A1 zum Adressieren einzelner Bits, Byies öder iiäibworie im Datenregister R i, ein 5 Bit Adreßregister A 2 zum Adressieren einzelner Bits, Bytes oder Halbworte im Datenregister R 2 und ein 2 Bit Kontrollregister BB, mit dessen Hilfe zwischen Bitadressierung (BB ist auf 00 gesetzt), Byteadressierung (BB ist auf 01 gesetzt) und Halbwortadressierung (BB ist auf 10 gesetzt) unterschieden werden kann. Die Adreßregister A 1 und A 2 können über eine fünf Leitungen umfassende Datensammelleitung B5 aus den niedrigstwertigen fünf Binärstellen des Datenpufferregisters MBR geladen werden, während das Kontrollregister BB aus dem Steuerwerk des Rechners über die Leitung B 6 gesetzt wird.loaded. A full data word, via the lines 32 comprehensive data bus Bl from the data buffer register MBR of the memory both in the data register R 1 can also be loaded into the data register R.sub.2. The data word contained in the data register R 2 can be transferred both to the memory address register MAR and to the data buffer register MBR via a second data bus line B 4 , also consisting of 32 lines. In the exemplary embodiment, devices are provided for transferring both individual bits and bytes (fields of eight bits) and half-words from data register R 1 to data register R 2 . These devices are a data line dl, which consists of a single line for transferring a bit, a data bus line B2, consisting of 8 lines via which a byte can be transferred, and a data bus line B 3 for transferring a half-word and a 5-bit address register A. 1 for addressing individual bits, bytes or words in data register R i, a 5-bit address register A 2 for addressing individual bits, bytes or half-words in data register R 2 and a 2-bit control register BB, with the help of which between bit addressing (BB is set to 00 ), byte addressing (BB is set at 01) and half-word addressing (BB is set to 10) can be discriminated. The address registers A 1 and A 2 can be loaded from the five least significant binary digits of the data buffer register MBR via a data bus B5 comprising five lines, while the control register BB is set from the control unit of the computer via line B 6.

Ist das Kontrollregister BB auf 00 gesetzt, so werden alle fünf Bits der Adreßregister A 1 und A 2 zur Adressierung einer der 32 Binärstellen der Register R i bzw. R 2 benutzt Im Falle von Byteadressierung, d. h., wenn das Kontrollregister BB auf 01 gesetzt ist, werden lediglich die höchstwertigen zwei Bits der Register A 1 und A 2 zur Adressierung eines von vier Bytes der Register Al und R2 benutzt. Im Falle von Halbwortadressierung, wenn also das Kontrollregister BB auf 10 gesetzt ist, wird lediglich aus höchstwertige Bit der Adreßregister A 1 und A 2 zum Adressieren eines von zwei Halbworten der Datenregister R1 und R 2 benutzt Die Adreßdekoder sind in F i g. 2 nicht gezeigt.If the check register BB set to 00, all the five bits of the address registers A 1 and A 2 are used to address one of the 32 binary digits of the registers R i and R 2 used in the case of byte addressing, that is, when the control register BB is set at 01 , only the two most significant bits of registers A 1 and A 2 are used to address one of four bytes in registers A1 and R2 . In the case of half-word addressing, that is, when the control register BB is set to 10, the address register A 1 and A 2 is for addressing a use of two half words of the data registers R 1 and R 2 only from most significant bit of the address decoder are in F i g. 2 not shown.

Die Funktionsweise der Bitfeldtransfereinheit soll nun anhand des Auslesens eines Datenwortes aus einem durch einen Bitebenendefekt beeinträchtigten Speicherbereich erläutert werden.The mode of operation of the bit field transfer unit should now be based on the reading out of a data word from a memory area affected by a bit-plane defect will be explained.

Der Prozessor erzeugt eine physische Adresse, deren Code sowohl in das Speicheradreßregister MA R als auch in das Datenpufferregister MBR geladen wird. Wird durch Vergleich mit der Fehlertabelle festgestellt, daß die Adresse in einem defekten Speicherbereich liegt, so werden die niedrigstwertigen fünf Bits der Adresse, die auch die Bitposition des Korrekturbits in dem zugehörigen Korrekturbitwort angeben, in das Adreßregister A1 übertragen. Außerdem wird auch durch das Steuerwerk das Konirollbit BBauf 00 gesetzt. Nach Ausführung des Speicherzugriffs steht das in der mit dem Bitebenendefekt koi;nzidenten Bitposition inkorrekte Datenwort im Datenpufferregister MBR, von wo es in das Datenregister R 2 übertragen wird. Nunmehr wird im Prozessor die Adreßberechnung für das Korrekturbitwort vorgenommen, der Speicherzugriff mit dieser Adresse durchgeführt und das Korrekturbitwort in das Datenrejnster R 1 geladen. Der Prozessor schafft außerdem aiu:ü der entsprechenden Eintragung in der Fehlertabelle die Adresse der Bitposition des Bitebenendefektes und setzt diese in das Adreßregister A 2 ein. Die im Adreßregister A 1 enthaltene Adresse sei 21, die im Adreßregister A 2The processor generates a physical address, the code of which is loaded into both the memory address register MA R and the data buffer register MBR. If a comparison with the error table shows that the address is in a defective memory area, the five least significant bits of the address, which also indicate the bit position of the correction bit in the associated correction bit word, are transferred to the address register A1. The control unit also sets the control bit BB to 00. After the memory access has been carried out, the data word which is incorrect in the bit position coincident with the bit plane defect is in the data buffer register MBR, from where it is transferred to the data register R 2 . The address calculation for the correction bit word is now carried out in the processor, the memory access is carried out with this address and the correction bit word is loaded into the data register R 1. The processor also creates the address of the bit position of the bit plane defect for the corresponding entry in the error table and inserts this into the address register A 2 . Let the address contained in the address register A 1 be 21, the address in the address register A 2

π enthaltene Adresse sei 12. Nunmehr werden die in den Adreßregistern A 1 und A 2 enthaltenen Adressen dekodiert, der Inhalt der 21. Binärstelle des Datenregisters R 1 auf die Datensamme:lleitung B1 übertragen und von dort in die 12. Binärstelle des Registers R 2 übernommen, jeizi emriäii daü Daienregister R 2 das korrigierte Datenwort das nun wieder in das Datenpufferregister MBR geladen wird, von wo es der Prozessor übernehmen kann.
Beim Transfer von Bytes werden entsprechend nur die höchstwertigen zwei Bits der Adreßregister A 1 und A 2 dekodiert, das adressierte Byte des Datenregisters R\ wird auf die Datensammelleitung B 2 übertragen, von wo es in das durch den Inhalt des Adreßregisters A 2 adressierte Byte des Daterircgisters R 2 übernommen wird. Dieser Vorgang ist schematisch für die Übertragung des Bytes zwischen den Binärstellen 8 und 15 des Datenregisters R 1 unf den Binärstellen 24 und 31 des Datenregisters R2 angedeutet.
π address contained was 12 will now be decodes the addresses contained in the address registers A 1 and A 2, the contents of the 21 bit location of the data register R 1 to the Datensamme: oil line B 1 and transferred from there to the 12th bit location of the register R 2 taken over, jeizi emriäii daü Daienregister R 2 the corrected data word which is now reloaded into the data buffer register MBR , from where it can be taken over by the processor.
When transferring bytes, only the most significant two bits of the address registers A 1 and A 2 are decoded, the addressed byte of the data register R \ is transferred to the data bus B 2 , from where it is transferred to the byte of the addressed by the content of the address register A 2 Daterircgisters R 2 is taken over. This process is indicated schematically for the transfer of the byte between the binary positions 8 and 15 of the data register R 1 and the binary positions 24 and 31 of the data register R2.

Die Bitfeldtransfereinheit kann durch verschiedene Maßnahmen in sinnvoller Weise ergänzt werden. Es ist denkbar, die Einheit mit einem zwei bis vier Register umfassenden Pufferspeicher für Korrekturbitworte auszurüsten. Dadurch können beim Zugriff auf mehrere unmittelbar aufeinanderfolgende Adressen, wie diesThe bit field transfer unit can be expediently supplemented by various measures. It is conceivable, the unit with a buffer memory comprising two to four registers for correction bit words equip. This allows when accessing several immediately consecutive addresses like this

z. B. beim Durchlaufen von Instruktionssequenzen der Fall ist, wiederholte Speicherzugiriffe zur Beschaffung der entsprechenden Korrekturbits vermieden ur.· j damit der Programmdurchlauf beschleunigt werden.z. B. is the case when running through instruction sequences, repeated memory accesses for procurement of the corresponding correction bits are avoided so that the program run can be accelerated.

Der Vorteil der Anordnung der Bitfeldtransfereinheit an der Schnittstelle zwischen Prozessor und Arbeitsspeicher liegt darin, daß die durch Defekte im Prozessor und/oder im Speicher verursachten Fehler in Datenworten beim Transfer über die Schnittstelle korrigiert werden können und daß Datenworte einem Defekt vorThe advantage of arranging the bit field transfer unit at the interface between the processor and the main memory lies in the fact that the errors in data words caused by defects in the processor and / or in the memory can be corrected during the transfer via the interface and that data words are defective

so Übergabe in die entsprechende Einheit angepaßt werden können.so handover to the appropriate unit can be customized.

Es ist demzufolge auch möglich, an dieser Schnittstelle mehrere Prozessoren, z. B. Kanäle, oder zusätzliche Speichersegmente anzuschließein, deren eventuelle Defekte ebenfalls durch die Bitfeldtransfereinheit korrigiert werden könnten. Die Steuerung der Einheit wird zweckmäßig vom Steuerwerk des Prozessors übernommen, der Kontrolle über das Speicherpufferregister MBR ausübtIt is therefore also possible to use several processors, e.g. B. channels, or additional memory segments to be connected, the possible defects of which could also be corrected by the bit field transfer unit. The control of the unit is expediently taken over by the control unit of the processor, which exercises control over the memory buffer register MBR

Hierzu 2 Blatt ZeichnungenFor this purpose 2 sheets of drawings

Claims (1)

Patentansprüche;Claims; I, Schaltungsanordnung zum Ausfahren von Rekonfigurationen der Hardwarestruktur eines programmierbaren Digitalrechners beim Auftreten permanenter, mit Hilfe fehlererkennenden Codes festgestellter und anschließend mit einem Diagnoseprogramm lokalisierter Defekte in Speicber- und/oder Schaltwerkskomponenten auf eine reduzierte Struktur, in der die defekten Komponenten nicht benutzt und deren Funktionen auf gleichartige' intakte Komponenten übertragen werden, dadurch gekennzeichnet, daß eine Bitfeldtransfereinheit (1) zwischen den Prozessor und den Arbeitsspeicher geschaltet ist, daß die Bitfeldtransfereinheit (I) im wesentlichen aus einem bit-byte- und halbwortadressierbaren ersten Datenregister (RX) von Wortlänge und einem bit-, byte- und halbwortadressierbaren zweiten Datenregister (R 2) von Wortlänge besteht, daß das erste und das zweite Datenregister (RX, R2) über Datenübertragungswege (B X, B 2, B 3) in der Weise verbunden sind, daß innerhalb eines Maschinentaktes jedes Bit, Byte oder Halbwort aus dem ersten Datenregister (R X) extrahierbar und in eine vorbestimmte Bit-, Byteoder Halbwortposition des zweiten Datenregisters (R 2) einsetzbar ist, daß ein Datenpufferregister (MBR) des Arbeitsspeichers ausgangseitig mit den Eingängen des ersten Datenregisters (R X) und mit den Eingängen des zweiten Datenregisters (R 2) verbunden ist, so daß ein Datenwort von dem Datenpufferregister (MBR) wahlweise in jedes der beiden Datenregister (R% R2) '.ransferierbar ist, daß die Ausgänge des zweiten Daten registers (R 2) mit den Eingängen des Datenpuffe: registers (MBR) und den Eingängen eines Speicheradreßregisters (MAR) verbunden sind, so daß ein Datenwort aus dem zweiten Datenregister (R 2) wahlweise in das Datenpufferregister (MBR) oder das Speicheradreßregister (MAR) übertragbar ist, daß der Arbeitsspeicher des Rechners eine Korrekturbitregion zum Speichern der mit den defekten Bitebenen zusammenfallenden Bits besitzt, daß ein aus einem fehlerbehafteten Adreßbereich gelesenes Daten* wort über das Datenpufferregister (MBR) in das zweite Datenregister (R 2) einschreibbar ist, daß aus der Korrekturbitregion das zugehörige Korrekturbitwort über das Datenpufferregister (MBR) in das erste Datenregister (R X) transferierbar ist, daß mit einer Adressiereinrichtung Korrekturbits oder Bitfelder aus dem ersten Datenregister (R X) über einen der drei Datenübertragungswege (BX, B2, B3) in die fehlerkoinzidenten Bitpositionen des im zweiten Datenregister (R 2) befindlichen Datenwortes einsetzbar sind und der Prozessor den korrigierten Inhalt des zweiten Datenregisters (R 2) über das Datenpufferregister (MBR) übernimmt, daß ein in einem fehlerbehafteten Adreßbereich des Arbeitsspeichers eingeschriebenes Datenwort gleichzeitig in das erste Datenregister (R X) übertragbar ist, daß das zweite Datenregister (R 2) zum übernehmen des zugehörigen Korrekturbitwortes eingerichtet ist, daß die fehlerkoinzidenten Bits oder Bitfelder aus dem ersten Datenregister (R X) über eine der drei Datenübertragungsleitungen (BX, Bl, B3) in das zweite Datenregister (R 2) übertragbar sind und dessen Inhalt in der Korrekturbitregion abgespeichert ist, daß die Bitfeldtrsnsfereinheit auf entsprechende Weise Datenworte, die entweder von einem durch Bitscheibendefekte beeinträchtigten Prozessor erzeugt oder diesem übergeben werden, I, circuit arrangement for deploying reconfigurations of the hardware structure of a programmable digital computer in the event of permanent defects in memory and / or switchgear components that have been identified with the help of error-detecting codes and then localized with a diagnostic program to a reduced structure in which the defective components and their functions are not used are transferred to similar 'intact components, characterized in that a bit field transfer unit (1) is connected between the processor and the main memory, that the bit field transfer unit (I) consists essentially of a bit-byte and half-word addressable first data register (RX) of word length and a bit, byte and half-word addressable second data register (R 2) of word length, that the first and the second data register (RX, R2) are connected via data transmission paths (BX, B 2, B 3) in such a way that within one Machine cycle every bit, byte or r half-word can be extracted from the first data register (RX) and inserted into a predetermined bit, byte or half-word position of the second data register (R 2) that a data buffer register (MBR) of the main memory is connected to the inputs of the first data register (RX) and to the Inputs of the second data register (R 2) is connected, so that a data word from the data buffer register (MBR) is optionally in each of the two data registers (R% R2) '. Transferbaren that the outputs of the second data register (R 2) with the Inputs of the data buffer: register (MBR) and the inputs of a memory address register (MAR) are connected, so that a data word from the second data register (R 2) can either be transferred to the data buffer register (MBR) or the memory address register (MAR) of the computer has a correction bit region for storing the bits that coincide with the defective bit planes, that one read from a faulty address area Data * word via the data buffer register (MBR) in the second data register (R 2) is inscribed in that of the Korrekturbitregion the associated Korrekturbitwort via the data buffer register (MBR) in the first data register (RX) is transferable, that with a addressing correction bits or bit fields from the first data register (RX) can be inserted into the error-coincident bit positions of the data word in the second data register (R 2 ) via one of the three data transmission paths (BX, B2, B3) and the processor can transfer the corrected content of the second data register (R 2) via the The data buffer register (MBR) assumes that a data word written in an error-prone address area of the main memory can be transferred to the first data register (RX) at the same time, that the second data register (R 2) is set up to accept the associated correction bit word, that the error-coincident bits or bit fields are removed the first data register (RX) via one of the three Data transmission lines (BX, B1, B3) can be transferred to the second data register (R 2) and the content of which is stored in the correction bit region so that the bit field transfer unit in a corresponding manner data words that are either generated by a processor impaired by bit slice defects or transferred to it, zusammenfügt oder zerlegt und nur bei Operationen in fehlerbehafteten Speicherregionen oder Prozessorelementen aktiv ist,combines or disassembles and is only active during operations in faulty memory regions or processor elements, Z Schaltungsanordnung mich Anspruch !,dadurch gekennzeichnet,daß dem ersten Datenregister (R X), Z circuit arrangement me claim!, Characterized in that the first data register (RX), ein erstes Adreßregister (A X), mit Dekodier'ogik und dem zweiten Datenregister (R 2) ein zweites Adreßregister (A 2) mit Delcodierlogik zugeordnet ist, daß jedes der zwei Adreßregister (A 1, A 2) π Binärstellen und jedes der Datenregister (R 1, R 2) 2" a first address register (AX) with decoding logic and the second data register (R 2) is assigned a second address register (A 2) with Delcodierlogik that each of the two address registers (A 1, A 2) π binary digits and each of the data registers ( R 1, R 2) 2 " Binärstellen besitzt, so daß mit den Inhalten der Adreßregister (A X, A 2) jede Binärstelle des jeweils zugeordneten Datenregisters (R X,R2) adressierbar ist, daß mindestens ein Kontrollregister (BB) eingangsseitig über eine Datenleitung (B 6) mit demHas binary digits, so that with the contents of the address register (AX, A 2) each binary digit of the respectively assigned data register (RX, R2) can be addressed, so that at least one control register (BB) on the input side via a data line (B 6) with the Steuerwerk des Rechners verbunden ist und vom Steuerwerk gesetzt werden kann, und ausgangsseitig auf die Kontrolleingänge des ersten und zweiten Adreßregisters (A i, A 2) geschaltet ist, so daß über die gleichen Adressierungseinrichtungen auch zuControl unit of the computer is connected and can be set by the control unit, and on the output side it is switched to the control inputs of the first and second address registers (A i, A 2), so that the same addressing devices are also used sammenhängende Felder von 8 Bits (Byts) sowie von 2"-< Bits (Halbworte) adresssierbar sind, daß die Ausgänge der niedrigstwertigen η Binärstellen des Datenpufferregisters^AißÄ^über die Datensammelleitung (BS) auf die korrespondierenden EingängeContiguous fields of 8 bits (bytes) and 2 "- <bits (half-words) can be addressed so that the outputs of the least significant η binary digits of the data buffer register ^ AißÄ ^ over the data bus (BS) to the corresponding inputs der /7 Binärstellen des ersten und des zweiten Adreßregisters (A X, A 2) geschaltet sind.the / 7 binary digits of the first and second address registers (AX, A 2) are switched. 3. Schaltungsanordnung nach Anspruch 1 und 2, dadurch gekennzeichnet, daß eine erste Datenleitung (B X), bestehend aus eimern Leiter ausgangssei-3. Circuit arrangement according to claim 1 and 2, characterized in that a first data line (BX) consisting of buckets of conductors output side tig mit jeder Binärstelle de» ersten Datenregisters (RX) derart verbunden ist, daß der Inhalt einer adressierten Binärstelle des ersten Datenregisters (R X) in die adressierte Binärstelle des zweiten Datenregisters (R 2) übertragbar ist, daß eine zweitetig is connected to each binary digit of the first data register (RX) in such a way that the content of an addressed binary digit of the first data register (RX) can be transferred to the addressed binary digit of the second data register (R 2) Datenleitung (B 2) bestehend aus acht Leitern, ausgangsseitig mit jedem der 2"-« Bytefelder des ersten Datenregisters (R X) und eingangsseitig mit jedem der 2a~3 Bytefelder des zweiten Datenregisters (R 2) derart verbunden ist, daß der Inhalt einesData line (B 2) consisting of eight conductors, on the output side with each of the 2 "-« byte fields of the first data register (RX) and on the input side with each of the 2 a ~ 3 byte fields of the second data register (R 2) is connected in such a way that the content of a adressierten Bytefeldes des ersten Datenregisters (RX) in das adressierte Bytefelder des zweiten Datenregisters (R 2) übertragbar ist und daß über eine dritte Datenleitung (BB), bestehend aus 2"-' Leitern, in gleicher Weise Halbwortfelder vomaddressed byte field of the first data register (RX) can be transferred to the addressed byte field of the second data register (R 2) and that via a third data line (BB) consisting of 2 "conductors, half-word fields from the so ersten Datenregister (R X) auf das zweite Datenregister (R 2) übertragbar sind.so the first data register (RX) can be transferred to the second data register (R 2) .
DE19762609064 1976-03-05 1976-03-05 Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit) Expired DE2609064C3 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19762609064 DE2609064C3 (en) 1976-03-05 1976-03-05 Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19762609064 DE2609064C3 (en) 1976-03-05 1976-03-05 Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit)

Publications (3)

Publication Number Publication Date
DE2609064A1 DE2609064A1 (en) 1977-09-08
DE2609064B2 DE2609064B2 (en) 1977-12-22
DE2609064C3 true DE2609064C3 (en) 1978-08-10

Family

ID=5971569

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19762609064 Expired DE2609064C3 (en) 1976-03-05 1976-03-05 Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit)

Country Status (1)

Country Link
DE (1) DE2609064C3 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD320564S (en) 1989-01-30 1991-10-08 Robert Blend Combined clock and calendar

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4475194A (en) * 1982-03-30 1984-10-02 International Business Machines Corporation Dynamic replacement of defective memory words

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD320564S (en) 1989-01-30 1991-10-08 Robert Blend Combined clock and calendar

Also Published As

Publication number Publication date
DE2609064B2 (en) 1977-12-22
DE2609064A1 (en) 1977-09-08

Similar Documents

Publication Publication Date Title
DE2619159C2 (en) Error detection and correction device
DE2523414C3 (en) Hierarchical storage arrangement with more than two storage levels
DE1901228C3 (en) Data processing system with facilities for repeating operations when an error occurs
DE2328869C2 (en) Method and circuit arrangement for operating a digital storage system
DE3128740C2 (en)
DE3032630C2 (en) Semiconductor memory from memory modules with redundant memory areas and method for its operation
EP0228559A1 (en) Fault-tolerant multi-computer arrangement
DE2646162B2 (en) Circuit arrangement for replacing incorrect information in memory locations of a non-changeable memory
DE3131341A1 (en) &#34;BUFFER STORAGE ORGANIZATION&#34;
DE2030760A1 (en) Memory circuit
DE2225841C3 (en) Method and arrangement for systematic error checking of a monolithic semiconductor memory
DE2750721A1 (en) INPUT / OUTPUT SYSTEM
DE2456709C2 (en) Circuit arrangement for error detection and correction
DE2210325A1 (en) Data processing system
DE2400064A1 (en) MEMORY CHECK ARRANGEMENT AND TERMINAL SYSTEM USING THIS IN A DATA PROCESSING SYSTEM
DE3209679A1 (en) SEMICONDUCTOR STORAGE DEVICE
DE2713685A1 (en) MICRO-PROGRAM CONTROLLED DATA PROCESSING SYSTEM
DE102020111321A1 (en) SYSTEM AND PROCEDURE FOR DETECTION AND CORRECTION OF DATA ERRORS IN A TRANSPARENT REGISTER
DE2554502C3 (en) Method and arrangement for addressing a memory
EP1222545B1 (en) Method and circuit configuration for storing data words in a ram module
DE2320354A1 (en) SELF-CHECKING CODE CONVERTER
DE2609064C3 (en) Circuit arrangement for performing reconfigurations of the hardware structure of a programmable digital computer (bit field transfer unit)
DE2807321A1 (en) VOLTAGE MONITORING IN A DATA PROCESSING SYSTEM
EP1254461B1 (en) Testable rom chip for a data memory redundant logic
DE2106731A1 (en) Diagnostic equipment for electronic data processing systems

Legal Events

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