DE4030629C2 - Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system - Google Patents

Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system

Info

Publication number
DE4030629C2
DE4030629C2 DE4030629A DE4030629A DE4030629C2 DE 4030629 C2 DE4030629 C2 DE 4030629C2 DE 4030629 A DE4030629 A DE 4030629A DE 4030629 A DE4030629 A DE 4030629A DE 4030629 C2 DE4030629 C2 DE 4030629C2
Authority
DE
Germany
Prior art keywords
memory
bits
cache
bit
control
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 - Fee Related
Application number
DE4030629A
Other languages
German (de)
Other versions
DE4030629A1 (en
Inventor
Gerd Dipl Ing Koppe
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.)
Wincor Nixdorf International GmbH
Original Assignee
Wincor Nixdorf International GmbH
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 Wincor Nixdorf International GmbH filed Critical Wincor Nixdorf International GmbH
Priority to DE4030629A priority Critical patent/DE4030629C2/en
Publication of DE4030629A1 publication Critical patent/DE4030629A1/en
Application granted granted Critical
Publication of DE4030629C2 publication Critical patent/DE4030629C2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0811Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies

Description

Die Erfindung betrifft eine Anordnung gemäß dem Oberbegriff des Patentanspruches 1.The invention relates to an arrangement according to the preamble of Claim 1.

In einem Multiprozessorsystem mit Cachespeichern sind besondere Maßnahmen zur Aufrechterhaltung der Datenkonsistenz zu treffen, da geänderte Daten, auf die einer der Prozessoren zugreifen will, nicht immer im Arbeitsspeicher, sondern in einem der Cache­ speicher verfügbar sind oder da von einem Prozessor zu ändernde Daten auch in einem anderen Cachespeicher eingetragen sein kön­ nen. Im einen Falle muß der Arbeitsspeicher wissen, in welchem Cachespeicher die Daten verfügbar sind, und im anderen Falle sind die in anderen Cachespeichern eingetragenen Daten für ungültig zu erklären.In a multiprocessor system with caches are special Take measures to maintain data consistency, there changed data that one of the processors access wants, not always in RAM, but in one of the caches memory are available or because a processor has to change them Data can also be entered in another cache memory nen. In one case, the working memory must know which one Cache the data is available, and otherwise are the data entered in other caches for to invalidate.

Zu diesem Zweck ist es bekannt, die Speichereinträge im Arbeits­ speicher oder in den den Arbeitsspeicher bildenden Speicherein­ heiten mit zusätzlichen Steuerinformationen zu koppeln, die ei­ nerseits anzeigen, ob der Arbeitsspeicher oder einer der Cache­ speicher die exklusive Verantwortung für den zugehörigen Spei­ chereintrag trägt. Ist es ein Cachespeicher, dann ist zusätzlich dessen Adresse angegeben. Ist es dagegen der Arbeitsspeicher, dann ist zusätzlich gekennzeichnet, in welchem der Cachespei­ cher sich der zugehörige Eintrag ebenfalls befindet, so daß die gekennzeichneten Cachespeicher gezielt angesteuert werden kön­ nen, um die Einträge für ungültig zu erklären, wenn ein anderer Cachespeicher die Verantwortung exklusiv übernehmen will.For this purpose it is known to work in memory entries memory or in the memory forming the working memory units with additional tax information, the egg on the other hand show whether the memory or one of the cache save the exclusive responsibility for the associated memory entry. If it is a cache, then it is additional whose address is given. On the other hand, is it the main memory, then it is additionally marked in which of the cache restaurants The associated entry is also located so that the marked cache memory can be targeted to invalidate the entries if another Cache wants to take responsibility exclusively.

Diese Steuerinformationen können unmittelbar zusammen mit dem jeweiligen Speichereintrag im Arbeitsspeicher bzw. in dessen Spei­ chereinheiten oder in gesonderten Tabellen gespeichert sein - man siehe z. B. Conference Proceedings of the 14 th Annual International Symposium on Computer Architecture, 1987, Seiten 234 bis 243, insbesondere Abschnitt 5.This tax information can be shared with the respective memory entry in the working memory or in its memory units or stored in separate tables  - see z. B. Conference Proceedings of the 14th Annual International Symposium on Computer Architecture, 1987, pages 234 to 243, in particular section 5.

Die Steuerinformationen bestehen dabei aus einem Steuerbit, das z. B. mit dem Wert "0" auf die Verantwortung durch den Arbeits­ speicher und mit dem Wert "1" auf die Verantwortung durch einen der Cachespeicher hinweist, dessen Adresse in einem nachfolgen­ den Speicherfeld eingetragen ist. Zur Kennzeichnung der einzel­ nen Cachespeicher, die gleichadressierte Speichereinträge auf­ weisen, kann dieses nachfolgende Speicherfeld zugleich aus ei­ ner der Anzahl der Cachespeicher des Systems entsprechenden An­ zahl von Bit bestehen, von denen jeweils eines einem der Cache­ speicher individuell zugeordnet ist.The control information consists of a control bit that e.g. B. with the value "0" on the responsibility by the labor store and with the value "1" to the responsibility of one the cache indicates the address of which follow in one the memory field is entered. To identify the individual NEN cache, the same addressed memory entries point, this subsequent memory field can also from egg The number corresponding to the number of caches in the system number of bits exist, one of each one of the cache memory is allocated individually.

Diese Form der Steuerinformation ermöglicht eine äußerst schnelle Entscheidung darüber, wo die gewünschten Daten ver­ fügbar sind und ob gegebenenfalls Einträge in anderen und in welchen Cachespeichern für ungültig zu erklären sind. Anderer­ seits sind von einzelnen Steuerbits abhängige Steuerungsabläu­ fe sehr störanfällig, insbesondere bei Verwendung von hochin­ tegrierten Speicherelementen für die Speicherung. So würde z. B. ein Fehler beim Steuerbit für die Zuständigkeit eines Speicher­ eintrages oder bei den Kennzeichnungsbits für die Cachespeicher sehr schnell zu einer Dateninkonsistenz im System führen. Es ist daher zweckmäßig die Steuerinformationen, wie bei Speicher­ daten allgemein üblich, extra zu sichern. Dies kann z. B. gemäß der DE-PS 34 33 679 durch Hinzufügen weiterer Bitstellen für ein Sicherungszeichen oder aber gemäß z. B. Steinbach, U.: Taschen­ buch der Nachrichtenverarbeitung, 2. Auflage, Springer Verlag, Berlin/Heidelberg/New York, 1967, Seiten 136/137 durch Mehr­ fachspeicherung in Verbindung mit einem Mehrheitsentscheider geschehen.This form of tax information enables an extreme quick decision about where the desired data ver are available and if necessary entries in other and in which caches to invalidate. Other on the one hand there are control delays dependent on individual control bits fe very susceptible to faults, especially when using hochin tegrated storage elements for storage. So z. B. an error in the control bit for the responsibility of a memory entry or in the identification bits for the cache memory very quickly lead to data inconsistency in the system. It is therefore useful the control information, as with memory data generally common to back up extra. This can e.g. B. according DE-PS 34 33 679 by adding further bit positions for a security symbol or according to z. B. Steinbach, U .: Taschen book of news processing, 2nd edition, Springer Verlag, Berlin / Heidelberg / New York, 1967, pages 136/137 by Mehr compartment storage in conjunction with a majority decision-maker happen.

Aufgabe der Erfindung ist es nun, die Darstellung der Steuer­ informationen und deren Auswertung für den Steuerungsablauf so abzuändern, daß in einfacher Weise ein höherer Sicherheitsgrad gegeben ist und zur Dateninkonsistenz führende fehlerhafte Steuerungsabläufe vermieden werden.The object of the invention is now to represent the tax information and its evaluation for the control process see above  change that in a simple way a higher level of security is given and incorrect data leads to data inconsistency Control processes can be avoided.

Diese Aufgabe wird ausgehend von einer Anordnung gemäß dem Ober­ begriff des Patentanspruches 1 durch die kennzeichnenden Merk­ male des Patenanspruches 1 gelöst.This task is based on an arrangement according to the Ober Concept of claim 1 by the characterizing note Male of patent claim 1 solved.

Danach wird die an sich übliche Bildung eines einheitlichen Si­ cherungszeichens für die gesamte Steuerinformation verlassen und die Sicherung getrennt in unterschiedlichen Kombinationen je nach Bedeutungsinhalt der Steuerinformation vorgenommen. So wird das Steuerbit in jedem Falle immer mehrfach gespeichert, so daß eine einen größeren Sicherheitsgrad gewährende Mehrheits­ entscheidung getroffen werden kann. Bei dreifacher Speicherung verursacht beispielsweise ein Ein-Bit-Fehler keinen fehlerhaf­ ten Steuerungsablauf, da dieser ohne weiteres erkannt und ohne Aufwand korrigiert wird. Gleiches gilt im Falle der Mehrfach­ speicherung der Adressenbits im nachfolgenden Speicherfeld. Im anderen Fall genügt für den gleichen Sicherungsgrad, daß ein Ein-Bit-Fehler erkannt wird, da dann durch eine gemäß einer Weiterbildung ersatzweise erfolgende Kennzeichnung aller im Sy­ stem vorhandenen Cachespeicher ein zur Dateninkonsistenz füh­ render Steuerungsablauf ebenfalls vermieden werden kann, wenn auch gegebenenfalls mehrere Cachespeicher unnötig zur Ungültig­ erklärung eingetragener Daten aufgerufen werden. Will man die­ ses vermeiden, dann muß z. B. statt eines einzigen Paritätsbits ein anderes, eine Korrektur ermöglichendes Sicherungszeichen gebildet werden.Then the usual formation of a uniform Si leave the security symbol for the entire tax information  and the fuse separately in different combinations depending on the meaning of the tax information. So the control bit is always saved multiple times, so that a majority giving a greater degree of security decision can be made. With triple storage for example, a one-bit error does not cause an error control sequence, since this is easily recognized and without Effort is corrected. The same applies in the case of multiple storage of the address bits in the following memory field. in the otherwise it is sufficient for the same level of security that a One-bit error is detected because then according to a Continuing education as a substitute for everyone in the Sy existing cache memory lead to data inconsistency render control flow can also be avoided if also, if necessary, several cache memories unnecessarily invalid declaration of entered data can be called up. Do you want that avoid this, then z. B. instead of a single parity bit another security symbol enabling correction be formed.

Bei Verwendung individueller Kennzeichnungsbits deckt sich die Anzahl der benötigten Kennzeichnungsbits zuzüglich der für ei­ nen gewünschten Sicherungsgrad benötigten Sicherungsbits in der Regel nicht mit der Anzahl der bei einem gleichartigen Siche­ rungsgrad durch Vervielfachung der Adressenbits benötigten Spei­ cherbits. Ein Optimum an Ausnutzung der Speicherbits für beide Speicherungsarten ist daher nur in wenigen Fällen gegeben, so daß vielfach einige Speicherbit bei der einen oder anderen Spei­ cherart ungenutzt bleiben. Bezogen auf eine Ein-Bit-Fehlerer­ kennung für die Kennzeichnungsbits und eine Ein-Bit-Fehlerkor­ rektur für die Adressenbits liegt das Optimum bei neun Spei­ cherbits, die im einen Falle für acht Kennzeichnungsbits und 1 Paritätsbit und im anderen Falle für eine dreifache Abspei­ cherung der Adressenbits benutzt werden.When using individual identifier bits, the Number of identifier bits required plus that for egg Necessary level of security required security bits in the Usually not with the number of the same type of siche Degree of storage required by multiplying the address bits cherbits. An optimal use of the memory bits for both Storage types are therefore only available in a few cases that often some memory bits in one or the other memory remain unused. Related to a one-bit error identifier for the identifier bits and a one-bit error code The optimum for the address bits is nine cherbits, which in one case for eight identification bits and 1 parity bit and in the other case for triple play address bits can be used.

Zur besseren Nutzung der Speicherbits bei einem vorgegebenen Sicherungsgrad kann es daher zweckmäßig sein, einem Teil der verfügbaren Speicherbits jeweils mehrere zu kennzeichnende Cachespeicher zuzuordnen und den verfügbaren restlichen Teil zur Steuerung der Zuordnung zu den jeweils zugehörigen Cache­ speichern zu verwenden. So können z. B. von vorhandenen 16 Cache­ speichern jeweils zwei einem Kennzeichnungsbit zugeordnet wer­ den, wobei drei zusätzliche Steuerbits anzeigen, ob im gegebenen Falle nur der erste oder nur der zweite oder aber beide Cache­ speicher gleichzeitig als gekennzeichnet gelten, während die Sicherung durch ein einziges Paritätsbit erfolgt. Das ergibt zusammen 12 Speicherbits, die andererseits für eine Dreifach­ speicherung der insgesamt vier Adressenbits genutzt werden kön­ nen. In diesem Falle können jedoch bei überlappender Kenn­ zeichnung durch die drei zusätzlichen Steuerbits die den ein­ zelnen Kennzeichnungsbits zugeordneten Cachespeicher nicht mehr einzeln angesteuert werden, sondern es sind jeweils beide der von den einzelnen Kennzeichnungsbits erfaßten Cachespeicher anzusteuern, auch wenn nur jeweils einer davon betroffen ist. Das erfordert zwar zusätzliche Ansteuervorgänge, verringert aber nicht den Sicherheitsgrad.For better use of the memory bits at a given one Degree of security may therefore be appropriate, part of the  available memory bits each several to be marked Allocate cache memory and the remaining portion available to control the assignment to the associated cache save to use. So z. B. from existing 16 cache each store two who are assigned to an identification bit with three additional control bits indicating whether in the given Fall only the first or only the second or both cache memories are also marked while the Secured by a single parity bit. That makes together 12 memory bits, which on the other hand for a triple storage of a total of four address bits can be used nen. In this case, however, with overlapping characteristics drawing by the three additional control bits the one caches associated with individual identifier bits no longer can be controlled individually, but both are each cache captured by the individual identifier bits to control, even if only one is affected. This requires additional control processes, reduced but not the level of security.

Einzelheiten der Erfindung seien nachfolgend anhand eines in der Zeichnung dargestellten Ausführungsbeispieles näher erläu­ tert. Im einzelnen zeigenDetails of the invention are based on a in the illustrated embodiment illustrated in more detail tert. Show in detail

Fig. 1 ein Strukturbild eines Multiprozessorsystems, Fig. 1 is a structural diagram of a multiprocessor system,

Fig. 2 ein Beispiel für einen Aufbau der Steuerinformation gemäß der Erfindung in den Tabellenspeichern von Fig. 1 und Fig. 2 shows an example of a structure of the control information according to the invention in the table memories of Fig. 1 and

Fig. 3 ein Blockschaltbild eines Teiles der zu einem Tabellen­ speicher von Fig. 1 gehörigen Steuerschaltung. Fig. 3 is a block diagram of part of the control circuit associated with a table memory of Fig. 1.

Fig. 1 zeigt die bekannte Struktur eines Multiprozessorsystems mit gemeinsamem Arbeitsspeicher, der in mehrere Speichereinhei­ ten M . . . unterteilt ist, zu denen die Prozessoren P . . . mit vor­ geschaltetem Cachespeicher STC . . . und SIC . . . über ein Verbin­ dungsnetzwerk VN Zugriff haben. Die Cachespeicher sind jeweils zweistufig ausgebildet, von denen der eine STC . . . mit Durchspei­ cherung geänderter Daten arbeitet und der zweite SIC . . . die ge­ änderten Daten sammelt, bis eine Rückspeicherung in den Ar­ beitsspeicher erforderlich wird, so daß das Verbindungsnetzwerk VN in bekannter Weise immer nur im Bedarfsfall belastet wird. Fig. 1 shows the known structure of a multiprocessor system with a common working memory, which is divided into a plurality of memory units M. . . is divided, to which the processors P. . . with upstream cache memory STC. . . and SIC. . . have access via a connection network VN. The cache memories are each formed in two stages, one of which is an STC. . . works with storage of changed data and the second SIC. . . collects the changed data until it is necessary to restore it to the memory, so that the connection network VN is only loaded in a known manner when necessary.

Jeder Speichereinheit M . . . ist ein in gleicher Weise adressier­ barer Tabellenspeicher DIR . . . für die mit jedem Speichereintrag in der zugehörigen Speichereinheit gekoppelte Steuerinformation zugeordnet.Each storage unit M. . . is addressed in the same way  bar table storage DIR. . . for those with every memory entry control information coupled in the associated storage unit assigned.

Der Aufbau einer solchen Steuerinformation ergibt sich aus Fig. 2. Je Eintrag sind 12 Bit BIT0 bis BIT11 vorgesehen. Die ersten drei Bit beziehen sich auf das Steuerbit EX, das dreifach ge­ speichert wird und mit dem Wert "0" der exklusiven Verantwor­ tung durch den Arbeitsspeicher sowie mit dem Wert "1" die exklu­ sive Verantwortung durch einen der Cachespeicher SIC/STC . . . kennzeichnet. Beim Wert "0" kennzeichnen die nachfolgenden acht Bit als individuelle Kennzeichnungsbits CA-KB acht verschiedene Cachespeicher, während das letzte Bit ein Paritätsbit ist, das als Sicherungszeichen SZ die acht Kennzeichnungsbits absichert, so daß ein Ein-Bit-Fehler erkennbar ist. Beim Wert "1" für das Steuerbit EX geben die restlichen neun Speicherbits die jeweils dreifach abgespeicherten Adressenbits B0 bis B2 der Adresse CA-AD des zuständigen Cachespeichers an.The structure of such control information is shown in FIG. 2. 12 bits BIT0 to BIT11 are provided for each entry. The first three bits relate to the control bit EX, which is stored in triplicate and with the value "0" the exclusive responsibility by the working memory and the value "1" the exclusive responsibility by one of the cache memories SIC / STC. . . indicates. If the value is "0", the following eight bits identify eight different cache memories as individual identifier bits CA-KB, while the last bit is a parity bit which secures the eight identifier bits as a security symbol SZ, so that a one-bit error can be identified. With a value of "1" for the control bit EX, the remaining nine memory bits indicate the address bits B0 to B2 of the address CA-AD of the responsible cache memory, which are stored three times each.

Sind weniger als acht Cachespeicher im System vorhanden, werden die nicht benötigten Kennzeichenbits CA-KB einfach auf den Wert "0" gesetzt. Sind mehr als acht Cachespeicher zu berücksichti­ gen, dann erweitert sich der Eintrag entsprechend, wobei im Fal­ le der Belegung mit einer Cacheadresse CA-AD die zusätzlichen Speicherbit ungenutzt bleiben, will man nicht - wie bereits erläutert - auf eine Mehrfachkennzeichnung ausweichen oder auf einen anderen Sicherungsgrad überwechseln, wenn die Anzahl der zu überwachenden Cachespeicher hierfür günstiger ist.If there are fewer than eight caches in the system, the CA-KB identifier bits not required simply to the value "0" set. Are there more than eight caches to consider? then the entry expands accordingly, whereby in case le the assignment with a cache address CA-AD the additional You don't want to leave the memory bit unused - as it already did explained - switch to multiple labeling or on change another level of security if the number of the cache to be monitored is cheaper for this.

Fig. 3 zeigt ein auf den Aufbau der Steuerinformation von Fig. 2 bezogenes Blockschaltbild des Tabellenspeichers mit dem dies­ bezüglichen Teil der zugehörigen Steuerung. Der aus dem Spei­ cherteil DIR-SP anhand der Adresse MAD jeweils ins Leseregister LREG übernommene Eintrag wird einerseits durch die Mehrheits­ entscheider MCH1 bis MCH4 und andererseits bezüglich der Kenn­ zeichenbits CA-KB durch die Prüfeinrichtung SZCH überprüft. Liefert der Mehrheitsentscheider MCH1 ein gesetztes Steuerbit EX und damit ein Anforderungssignal REQCOH zur Ansteuerung eines die exklusive Verantwortung für den zugehörigen Speichereintrag tragenden Cachespeichers, dann wird die von den Mehrheitsent­ scheidern MCH2 bis MCH4 gelieferte Adresse CA-ADCOH vom Aus­ wahlschalter SEL1 als Adresse CA-ADE des anzusteuernden Cache­ speichers zur weiteren Steuerung an seinem Ausgang freigegeben. Im anderen Falle werden über den Auswahlschalter SEL2 die gele­ senen Kennzeichnungsbits CA-KB, wenn kein Fehler ERR durch die Prüfeinrichtung SZCH festgestellt wird, zur Steuerung UP-ST durchgeschaltet, die nacheinander zu jedem gesetzten Kennzei­ chenbit CA-KB die zugehörige Adresse CA-ADUP ermittelt, die dann über den Auswahlschalter SEL1 zur Ansteuerung des zugehö­ rigen Cachespeichers freigegeben wird. Ein von der Steuerung UP-ST jeweils parallel dazu geliefertes Anforderungssignal REQUP zeigt an, daß ein durch die mitgelieferte Speicheradresse MAD gekennzeichneter Eintrag für ungültig zu erklären ist. FIG. 3 shows a block diagram of the table memory relating to the structure of the control information from FIG. 2, with the relevant part of the associated control. The entry taken from the memory section DIR-SP based on the address MAD into the reading register LREG is checked on the one hand by the majority decision-makers MCH1 to MCH4 and on the other hand with regard to the identifier bits CA-KB by the testing device SZCH. If the majority decision maker MCH1 supplies a set control bit EX and thus a request signal REQ COH to control a cache memory which bears the exclusive responsibility for the associated memory entry, then the address CA-AD COH supplied by the majority decision makers MCH2 to MCH4 is selected by the selector switch SEL1 as the address CA. -AD E of the cache to be controlled released for further control at its output. In the other case, via the selection switch SEL2, the read identification bits CA-KB, if no error ERR is determined by the test device SZCH, are switched through to the control UP-ST, and the address CA-AD associated with each set identification bit CA-KB UP determined, which is then released via the selector switch SEL1 to control the associated cache memory. A request signal REQ UP , delivered in parallel by the UP-ST controller, indicates that an entry identified by the memory address MAD supplied must be declared invalid.

Stellt die Prüfeinrichtung SZCH einen Fehler ERR fest, wird statt der Kennzeichnungsbits CA-KB der gelesenen Steuerinforma­ tion der Inhalt CA-KB′ aus dem Register CONFR über den Auswahl­ schalter SEL2 zur Steuerung UP-ST durchgeschaltet. Das Register weist für jeden im System vorhandenen Cachespeicher ein gesetz­ tes Kennzeichenbit auf, so daß im Fehlerfall vorsorglich alle Cachespeicher nacheinander zur Ungültigerklärung eines adres­ sierten Speichereintrages angesteuert werden.If the test device SZCH detects an error ERR, instead of the identification bits CA-KB of the read tax information tion of the content CA-KB ′ from the CONFR register via the selection switch SEL2 switched through to control UP-ST. The registry assigns a law to every cache in the system tes flag bit, so that in the event of an error everyone Cache one after the other to invalidate an address based memory entry can be controlled.

Mit jeder Speicheranforderung, die zum Lesen der zugehörigen Steuerinformation aus dem Speicherteil DIR-SP führt, muß ein neuer Steuerinformationseintrag erstellt werden. Dies erfolgt durch den im oberen Teil von Fig. 3 wiedergegebenen Steuerungs­ teil abhängig von der Adresse CA-ADS des anfordernden Cache­ speichers und der Art der Anforderung nach folgendem Schema:A new control information entry must be created with each memory request that leads to the reading of the associated control information from the memory section DIR-SP. This is done by the control part shown in the upper part of FIG. 3, depending on the address CA-AD S of the requesting cache and the type of request according to the following scheme:

Die Ableitung der sich danach ergebenden Steuersignale ist in Fig. 3 nicht gesondert dargestellt, sondern lediglich der davon beeinflußte Steuerungsteil. In diesem wird die Adresse CA-ADS des jeweils anfordernden Cachespeichers einerseits codiert der einen Eingangsgruppe 1 eines Auswahlschalters SEL3, der abhängig vom Steuersignal RDMSB eingestellt wird, und andererseits einem Decoder DEC zugeführt, der eine "1" aus n′′-Markierung für das jeweils zugehörige Kennzeichnungsbit CA-KB liefert. Diese Mar­ kierung wird entweder direkt einem der drei Eingänge eines wei­ teren Auswahlschalters SEL4 oder über eine ODER-Gliedgruppe OR zum Mischen mit den Kennzeichenbits der gelesenen Steuerinfor­ mation oder einer UND-Gliedgruppe U zum Löschen des markierten Kennzeichenbits in der gelesenen Steuerinformation zugeführt. Der Ausgang dieses Auswahlschalters SEL4 ist mit einem Siche­ rungsgenerator SZG gekoppelt, der das Sicherungszeichen SZ in Form des Paritätsbits P für die acht Kennzeichnungsbits CA-KB liefert. Die Kennzeichenbits werden zusammen mit dem erstellten Sicherungszeichen SZ der anderen Eingangsgruppe 0 des Auswahl­ schalters SEL3 zugeführt. Beide Eingangsgruppen 0 und 1 dieses Auswahlschalters werden außerdem durch drei an festem Potential liegende Eingänge ergänzt, die das jeweils zugehörige Steuerbit EX liefern, so daß mit diesem Auswahlschalter SEL3 die jeweils die neue Steuerinformation darstellende Bitkombination zur Spei­ cherung im Speicherteil DIR-SP bereitgestellt wird.The derivation of the control signals resulting thereafter is not shown separately in FIG. 3, but only the control part influenced thereby. In this the address CA-AD S of the respective requesting cache memory is coded on the one hand the one input group 1 of a selection switch SEL3, which is set depending on the control signal RDMSB, and on the other hand fed to a decoder DEC which has a "1" from n ′ ′ - marking for the respective associated identification bit CA-KB delivers. This marking is either fed directly to one of the three inputs of a further selector switch SEL4 or via an OR gate group OR for mixing with the flag bits of the read control information or an AND gate group U for deleting the flagged flag bits in the read control information. The output of this selection switch SEL4 is coupled to a fuse generator SZG, which supplies the security character SZ in the form of the parity bit P for the eight identifier bits CA-KB. The identifier bits are fed together with the created security symbol SZ to the other input group 0 of the selector switch SEL3. Both input groups 0 and 1 of this selector switch are also supplemented by three inputs connected to a fixed potential, which supply the associated control bit EX, so that this selector switch SEL3 provides the bit combination representing the new control information for storage in the memory section DIR-SP.

Claims (5)

1. Anordnung zur Sicherung von mit den Speichereinträgen eines Arbeitsspeichers (Speichereinheiten M . . . ) gekoppelten Steuer­ informationen in einem Multiprozessorsystem, bei dem mehreren oder allen Prozessoren (P . . . ) individuelle Cachespeicher (STC/ SIC . . . ) zugeordnet sind, wobei die Steuerinformationen zu je­ dem Speichereintrag kennzeichnen, ob für diesen Speichereintrag der Arbeitsspeicher (z. B. Speichereinheit M1) oder ein gekenn­ zeichneter Cachespeicher (z. B. SICn/STCn) verantwortlich ist und die Steuerinformationen weiterhin kennzeichnen, ob bei exklusiver Verantwortung des Arbeitsspeichers dieser Speichereintrag zusätzlich in einem oder mehreren der durch Kennzeichnungsbits gekennzeichneten Cachespeicher gleichzeitig eingetragen ist und daher bei einer Leseanforderung mit Schreib­ berechtigung an den Arbeitsspeicher wie beim Wechsel der Exklu­ sivität von einem Cachespeicher zu einem anderen die in den gekennzeichneten Cachespeichern vorhandenen Daten für ungültig zu erklären sind, dadurch gekennzeichnet,
daß für das Steuerbit (EX) zur Kennzeichnung der exklusiven Verantwortlichkeit mehrere (z. B. 3) Bitstellen (BIT0 bis BIT2) der Steuerinformation verwendet werden, in die jeweils der gleiche Binärwert ("0" oder "1") eingetragen wird und die gemeinsam durch einen Mehrheitsentscheider (MCH1) ausgewertet werden,
daß neben den benötigten n Bitstellen für die Kennzeichnungs­ bits (CA-KB) zur Kennzeichnung der Cachespeicher (SICn/STCn) m weitere Bitstellen zur Sicherung der Kennzeichnungsbits vorge­ sehen sind, die bei exklusiver Verantwortung des Arbeitsspei­ chers für den zugehörigen Speichereintrag die Kennzeichnungs­ bits (CA-KB) sichern,
daß bei exklusiver Verantwortung eines der Cachespeicher (SIC . . ./ STC . . .) die Werte der einzelnen Bitstellen (z. B. B0 bis B2) der aus 1d n (z. B. drei) Bitstellen bestehenden jeweiligen Cacheadres­ se (CA-AD) jeweils mehrfach in den vorhandenen n + m Bits oder einem Teil derselben abgespeichert und die mehrfach gespeicher­ ten Werte einer Bitstelle jeweils durch einen Mehrheitsentschei­ der (MCH2 bis MCH4) ausgewertet werden und
daß abhängig von der Auswertung der Bitstellen für das Steuer­ bit (EX) entweder die von den Mehrheitsentscheidern (MCH2 bis MCH4) für die Cacheadressenbits (B0 bis B2) gelieferte Cache­ adresse (CA-ADCOH) oder aber die von den individuellen Kenn­ zeichnungsbits (CA-KB) ableitbaren Cacheadressen (CA-ADUP) bei fehlerfreier Kennzeichnung (ERR = 0) für die weitere Steuerung freigegeben werden.
1. Arrangement for securing control information coupled with the memory entries of a main memory (memory units M...) In a multiprocessor system in which several or all processors (P...) Are assigned individual cache memories (STC / SIC...), The control information for each memory entry indicates whether the main memory (e.g. memory unit M1) or a marked cache memory (e.g. SICn / STCn) is responsible for this memory entry and the control information further indicates whether the exclusive responsibility of the Main memory this memory entry is additionally entered in one or more of the cache memories identified by identifier bits and, therefore, in the case of a read request with write authorization to the main memory such as when changing exclusivity from one cache memory to another, the data in the identified cache memories are invalid for invalid g are to be explained, characterized in that
that several (e.g. 3) bit positions (BIT0 to BIT2) of the control information are used for the control bit (EX) to identify the exclusive responsibility, in which the same binary value ("0" or "1") is entered and the jointly evaluated by a majority decision-maker (MCH1),
that in addition to the n bit positions required for the identification bits (CA-KB) for identifying the cache memory (SICn / STCn), m further bit positions for securing the identification bits are provided which, with the exclusive responsibility of the working memory for the associated memory entry, the identification bits ( CA-KB),
that with exclusive responsibility of one of the cache memories (SIC... / STC...) the values of the individual bit positions (e.g. B0 to B2) of the respective cache address (CA. 1d n (e.g. three) bit positions) -AD) are each stored several times in the existing n + m bits or a part thereof, and the multiple stored values of a bit position are each evaluated by a majority decision (MCH2 to MCH4) and
that depending on the evaluation of the bit positions for the control bit (EX), either the cache address (CA-AD COH ) supplied by the majority decision-makers (MCH2 to MCH4) for the cache address bits (B0 to B2) or that of the individual identifier bits ( CA-KB) derivable cache addresses (CA-AD UP ) with error-free identification (ERR = 0) can be released for further control.
2. Anordnung nach Anspruch 1, dadurch gekenn­ zeichnet, daß bei nicht korrigierbarer fehlerhafter Speicherung (ERR = 1) der Kennzeichnungsbits (CA-KB) für die weitere Steuerung und die Ableitung der jeweils neuen Steuer­ information die Kennzeichnungsbits (CA-KB′) für alle im System vorhandenen Cachespeicher (SIC . . . /STC . . . ) gesetzt werden.2. Arrangement according to claim 1, characterized records that with non-correctable erroneous Storage (ERR = 1) of the identification bits (CA-KB) for the further control and the derivation of the new tax information the identification bits (CA-KB ′) for everyone in the system existing cache memory (SIC... / STC...) are set. 3. Anordnung nach Anspruch 1 oder 2, dadurch ge­ kennzeichnet, daß die Kennzeichnungsbits (CA-KB) den Cachespeichern (SICn/STCn) individuell zugeordnet sind.3. Arrangement according to claim 1 or 2, characterized ge indicates that the identifier bits (CA-KB) are individually assigned to the cache memories (SICn / STCn). 4. Anordnung nach Anspruch 3, dadurch gekenn­ zeichnet, daß bei bis zu maximal acht Cachespeichern im System die Steuerinformationen aus zwölf Bits (BIT0 bis BIT11) besteht, von denen drei Bits (BIT0 bis BIT2) für die Mehrfachspeicherung des Steuerbits (EX) verwendet werden, während die übrigen neun Bits (BIT3 bis BIT11) im einen Falle den acht Kennzeichnungsbits (CA-KB) für die Cachespeicher (CA) und einem gemeinsamen Paritätsbit (P) als Sicherungszeichen (SZ) und im anderen Falle den jeweils verdreifachten drei Adressenbits (B0 bis B2) der jeweiligen Cacheadresse (CA-AD) zugeordnet sind.4. Arrangement according to claim 3, characterized records that up to a maximum of eight caches in the system the control information from twelve bits (BIT0 to BIT11), of which three bits (BIT0 to BIT2) for the Multiple storage of the control bit (EX) can be used while the remaining nine bits (BIT3 to BIT11) in one case the eight identifier bits (CA-KB) for the cache memories (CA) and a common parity bit (P) as a security character (SZ) and in the other case the tripled three Address bits (B0 to B2) of the respective cache address (CA-AD) assigned. 5. Anordnung nach Anspruch 1 oder 2, dadurch ge­ kennzeichnet, daß ein Teil der Kennzeichnungsbits mehreren (z. B. zwei) Cachespeichern gleichzeitig zugeordnet ist und ein weiterer Teil der Kennzeichnungsbits die Zuordnung der mehrfach genutzten Kennzeichnungsbits zu den jeweiligen Cache­ speichern steuert.5. Arrangement according to claim 1 or 2, characterized ge indicates that part of the identifier bits is assigned to several (e.g. two) cache memories at the same time and another part of the identifier bits the assignment of the re-used identification bits for the respective cache save controls.
DE4030629A 1990-09-27 1990-09-27 Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system Expired - Fee Related DE4030629C2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE4030629A DE4030629C2 (en) 1990-09-27 1990-09-27 Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE4030629A DE4030629C2 (en) 1990-09-27 1990-09-27 Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system

Publications (2)

Publication Number Publication Date
DE4030629A1 DE4030629A1 (en) 1992-04-02
DE4030629C2 true DE4030629C2 (en) 1996-05-23

Family

ID=6415123

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4030629A Expired - Fee Related DE4030629C2 (en) 1990-09-27 1990-09-27 Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system

Country Status (1)

Country Link
DE (1) DE4030629C2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5724549A (en) * 1992-04-06 1998-03-03 Cyrix Corporation Cache coherency without bus master arbitration signals
WO2001042928A1 (en) * 1999-12-08 2001-06-14 Axis Aktiebolag I/o method and apparatus for optical storage media

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3433679A1 (en) * 1984-09-13 1986-03-27 Siemens AG, 1000 Berlin und 8000 München Method and arrangement for securing important information in memory units with optional access, particularly for control bits in buffer memories acting as cache memories in a data processing system

Also Published As

Publication number Publication date
DE4030629A1 (en) 1992-04-02

Similar Documents

Publication Publication Date Title
DE2328869C2 (en) Method and circuit arrangement for operating a digital storage system
DE2132565C3 (en) Converter
DE2646163B2 (en) Circuit arrangement for replacing incorrect information in memory locations of a non-changeable memory
DE2646162B2 (en) Circuit arrangement for replacing incorrect information in memory locations of a non-changeable memory
DE2007787B2 (en) Data storage and data storage control circuit
DE1549468A1 (en) Memory arrangement for a program-controlled data processing system
DE2523414A1 (en) HIERARCHICAL STORAGE ARRANGEMENT
DE1901806A1 (en) Circuit arrangement for compensating for defective memory cells in data memories
DE2725396C3 (en)
DE2610411A1 (en) DATA PROCESSING SYSTEM
DE3832440A1 (en) TEST CIRCUIT DEVICE
DE2515099A1 (en) CIRCUIT FOR THE CONTINUOUS GENERATION OF A LONGITUDINAL PARITY WORD FOR THE MAIN MEMORY OF A DIGITAL COMPUTER
DE19680641C2 (en) Fault memory analyzer in a semiconductor memory test system
DE1250163B (en) Device for the parity check of memory words
DE2554502B2 (en)
DE10257337A1 (en) System and method for storing parity information in backups
DE2641700A1 (en) CLOCK MONITORING IN DIGITAL SYSTEMS
DE4030629C2 (en) Arrangement for securing control information coupled to the memory entries of a working memory in a multiprocessor system
DE3828289C2 (en)
EP0151810B1 (en) Method and circuit arrangement for testing a program in data processing systems
DE10062404A1 (en) Faulty memory cell address reduction method compares each detected faulty memory cell address with second fault address for word and/or bit line to be repaired for eliminating duplications
DE2004934A1 (en)
DE2153116C3 (en) Function-monitored information memories, in particular integrated semiconductor memories
DE2527236C3 (en) Arrangement for inserting data in a register
DE3009317A1 (en) HYBRID ASSOCIATIVE MEMORY

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee