DD254077A1 - MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN - Google Patents

MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN Download PDF

Info

Publication number
DD254077A1
DD254077A1 DD29683486A DD29683486A DD254077A1 DD 254077 A1 DD254077 A1 DD 254077A1 DD 29683486 A DD29683486 A DD 29683486A DD 29683486 A DD29683486 A DD 29683486A DD 254077 A1 DD254077 A1 DD 254077A1
Authority
DD
German Democratic Republic
Prior art keywords
cpu
register
cycle
lines
address
Prior art date
Application number
DD29683486A
Other languages
German (de)
Inventor
Wolfgang Matthes
Original Assignee
Robotron Elektronik
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 Robotron Elektronik filed Critical Robotron Elektronik
Priority to DD29683486A priority Critical patent/DD254077A1/en
Publication of DD254077A1 publication Critical patent/DD254077A1/en

Links

Landscapes

  • Multi Processors (AREA)

Abstract

Die Erfindung bezieht sich auf Multimikrorechnersysteme fuer komplexe Steuerungsaufgaben, z. B. fuer Bedien- und Service-Prozessoren fuer EDV-Anlagen. Aufgabe der Erfindung ist das Vermeiden von Wartezyklen, die bei internen Zugriffen zu Speichermitteln entstehen, wenn diese auch ueber den Systembus zugaenglich sind. Die Loesung besteht in Schaltmitteln, die vorbeugend Anforderungen seitens der CPU ausloesen, wobei die Ausloesung dann beginnt, wenn die CPU eine neue Adresse bereitstellt. Liegen hierbei keine Anforderungen hoeherer Prioritaet vor, werden die Warteflipflops sofort zurueckgesetzt, bevor die CPU deren Zustand abfragt. Zuvor wird die Stellung der Warteflipflops ausgewertet und ein Gueltigkeitsflipflop fuer die Dauer des Zyklus aktiviert. Bei den vorbeugenden Zyklen werden die Steuerleitungen der Speichermittel eher erregt, und der Zyklus wird eher beendet. Fig. 5The invention relates to multi-microcomputer systems for complex control tasks, eg. B. for operating and service processors for computer equipment. The object of the invention is the avoidance of waiting cycles, which arise in the case of internal accesses to storage means, if these are also accessible via the system bus. The solution consists in switching means that preventively trigger requests from the CPU, the triggering then starting when the CPU provides a new address. If there are no higher priority requests, the waiting loop flops are reset immediately before the CPU queries their status. Previously, the position of the waiting flip-flops is evaluated and a valid flip-flop is activated for the duration of the cycle. In the preventive cycles, the control lines of the storage means are more likely to be energized, and the cycle is sooner terminated. Fig. 5

Description

Anwendungsgebiet der ErfindungField of application of the invention

Die Erfindung betrifft eine Mikrorechneranordnung zum Einsatz in Multimikrorechnersystemen, die vorzugsweise mit dynamischen RAMs ausgerüstet ist. Derartige Anordnungen sind in Multimikrorechnersystemen über einen gemeinsamen Zeitmultiplexbus untereinander und mit anderen Einrichtungen verbunden, wobei zu den Speichermitteln, die vorzugsweise mit dynamischen RAMs ausgerüstet sind, sowohl intern seitens der CPU der Mikrorechneranordnung als auch extern über den Zeitmultiplexbus zugegriffen werden kann.The invention relates to a microcomputer assembly for use in multi-microcomputer systems, which is preferably equipped with dynamic RAMs. Such arrangements are interconnected with each other and with other devices in multi-core computer systems via a common time-division multiplex bus, wherein the memory means, which are preferably equipped with dynamic RAMs, can be accessed both internally by the CPU of the microcomputer array and externally via the time division multiplex bus.

Anordnungen dieser Art können dazu benutzt werden, relativ komplexe informationsverarbeitende Einrichtungen aufzubauen^ z.B. periphere Gerätefür EDV-Anlagen, wie Bedien- und Service-Prozessoren, Maschinensteuerungen usw.Arrangements of this kind can be used to build relatively complex information processing equipment ^ e.g. peripheral devices for computer equipment, such as operator and service processors, machine controls, etc.

Charakteristik der bekannten technischen LösungenCharacteristic of the known technical solutions

Mikrorechneranordnungen zum Einsatz in Multimikrorechnersystemen bei Verbindung über einen gemeinsamen Zeitmultiplexbus (Systembus) sind seit längerem bekannt. Charakteristisch ist, daß wenigstens bestimmte Teile der Speichermittel solcher Mikrorechneranordnungen sowohl von der eigenen CPU aus als auch über den Zeitmultiplexbus zugänglich sind. Bei letztgenannten Zugriffen wird die Mikrorechneranordnung als Slave adressiert. Weiterhin ist es möglich, daß Zugriffe zu anderen Einrichtungen aktiv angefordert werden. Dann wird der Bus als Master belegt. Geeignete Bussysteme mit „multi master capability" (mehrere Einrichtungen können alternativ als Master den Bus belegen) sind z. B. in dem Übersichtsartikel „Buses form the backbone of computer systems" (in: Electronic Design 30 [1982] Vol. 23, S. 117-132) dargestellt.Microcomputer arrangements for use in multi-microcomputer systems when connected via a common time-division multiplex bus (system bus) have been known for a long time. It is characteristic that at least certain parts of the memory means of such microcomputer arrangements are accessible both from the own CPU and via the time-multiplexed bus. In the case of the latter accesses, the microcomputer arrangement is addressed as a slave. Furthermore, it is possible that accesses to other devices are actively requested. Then the bus is assigned as master. Suitable bus systems with "multi-master capability" (several devices can alternatively occupy the bus as masters) are described, for example, in the review article "Buses form the backbone of computer systems" (in: Electronic Design 30 [1982] Vol 117-132).

Die Mikrorechner selbst müssen mit Vermittlungs- und Ablaufsteuereinrichtungen ausgestattet sein, um die vielfältigen Zugriffsweisen zu realisieren. Dies ist beispielsweise im WP 159916 „Mikrorechneranordnung, vorzugsweise für den Einsatz in Multimikrorechnersystemen" ausführlich beschrieben. Wesentlich für die Arbeitsgeschwindigkeit einer solchen Mikrorechneranordnung sind die internen Zugriffe zur Ausführung von Befehlen durch die CPU. Werden diese Zugriffe zu Speichermitteln geführt, die auch über den Systembus zugänglich sind, so ist nicht garantiert, daß der jeweilige Zugriff sofort ausgeführt werden kann. Deshalb wird dabei sofort ein WAIT-Signal für die CPU erregt, das die Dauer des Zugriffs für die Dauer der Erregung verlängert. WAIT wird erst dann wieder inaktiv, wenn der Zugriff vermittelt und ausgeführt wurde. Zugriffe seitens des Systems sind vergleichsweise selten, trotzdem muß WAIT jeweils erregt werden, um einen sicheren Betrieb zu gewährleisten. Für die Entscheidung über die Ausführung des Zugriffs oder die Zurückstellung zugunsten anderer Anforderungen wird eine gewisse Zeit benötigt. Die meisten Mikroprozessor-CPUs erwarten nun eine solche Entscheidung durch Abfrage des WAIT-Einganges bereits kurz nach Beginn des jeweiligen Zugriffs-Zyklus, d.h., WAIT muß stets zunächst prophylaktisch erregt werden, um den Vermittlungsschaltungen Zeit für den Entscheidungsprozeß einzuräumen. Damit wird pro Zugriff wenigstens ein Taktzyklus mehr benötigt als dies ohne Vermittlung der Fall wäre (Verlangsamung um etwa 20—30%). Somit ist die potentielle Geschwindigkeit gerade moderner schneller Mikroprozessor-CPUs (16 bzw. 32 Bit Verarbeitungsbreite) in solchen Mikrorechneranordnungen nicht ausnutzbar. Darauf wird in dem Artikel von J. C. Mathon ,^-Bit-Mikroprozessor der 2. Generation" (in: Elektronik von 29.11.85, S. 71-81) kritisch hingewiesen, und es wird ein neuer Mikroprozessortyp vorgestellt, bei dem die entsprechende Abfrage (statt mit WAIT mit READY bezeichnet) zeitlich verschoben ist, so daß für die Vermittlung ein nennenswertes Zeitintervall verbleibt, wodurch ein Warten in der Regel vermieden werden kann. Nun ist es aber gerade bei der ständigen Modernisieruang und Weiterentwicklung komplexer Multimikrorechnersysteme kaum möglich, den Typ der CPU ausschließlich unter dem Aspekt der Arbeitsgeschwindigkeit zu wählen. Vielmehr ist auf vorhandene (oft sehr umfangreiche) Softwarekomplexe Rücksicht zu nehmen, so daß ein bestimmter CPU-Typ vom Prinzip her beibehalten werden muß. Damit besteht der beschriebene Nachteil des Zeitverlustes weiterhin.The microcomputers themselves must be equipped with switching and flow control devices to realize the multiple access modes. This is described in detail, for example, in WP 159916 "Microcomputer arrangement, preferably for use in multi-microcomputer systems." Internal accesses to the execution of commands by the CPU are essential for the operating speed of such a microcomputer arrangement Therefore, this will immediately trigger a WAIT signal for the CPU, which will increase the duration of the access for the duration of the excitation, WAIT will not become inactive until Although system access is comparatively rare, WAIT must always be energized to ensure safe operation, and a certain amount of time is needed to decide whether to perform the access or defer in favor of other requests masters The microprocessor CPUs now expect such a decision by querying the WAIT input already shortly after the beginning of the respective access cycle, that is, WAIT must always first be prophylactically energized in order to give the switching circuits time for the decision-making process. This requires at least one clock cycle more per access than would be the case without switching (slowing by about 20-30%). Thus, the potential speed of modern fast microprocessor CPUs (16 or 32 bit processing width) in such microcomputer arrangements is not exploitable. This is critically referred to in the article by JC Mathon, "2nd Generation Bit Microprocessor" (in: Electronics, 29.11.85, pp. 71-81), and a new type of microprocessor is presented in which the corresponding query (instead of WAIT with READY) is shifted in time, so that for the switch a considerable time interval remains, whereby a wait can be avoided in the rule, but now it is hardly possible, especially with the constant Modernisieruang and advancement of complex multi-microcomputer systems, the type Rather, account must be taken of existing (often very extensive) software complexes, so that a specific type of CPU must be maintained in principle.

Ziel der ErfindungObject of the invention

Das Ziel der Erfindung besteht darin, in Mikrorechneranordnungen, die zum Einsatz in Multimikrorechnersystemen vorgesehen sind, die Zeitverluste zu vermeiden, die bei internen Zugriffen zu Speichermitteln entstehen, wenn diese auch extern (über den Systembus) zugänglich sind.The object of the invention is to avoid in microcomputer arrangements, which are intended for use in multi-microcomputer systems, the time losses which occur during internal accesses to storage means, even if these are accessible externally (via the system bus).

Wesen der ErfindungEssence of the invention

Die Aufgabe der Erfindung besteht darin, eine Mikrorechneranordnung zum Einsatz in Multimikrorechnersystemen so auszubilden, daß auch bei Verwendung von CPU-Typen, die nicht über spezielle Vorkehrungen verfügen, Wartezyklen vermieden werden, wenn intern zu Speichermitteln zugegriffen wird, die auch für externe Zugriffe seitens des Systembus zugänglich sind. Die Nachteile bekannter Mikrorechneranordnungen bestehen entweder darin, daß solche Zeitverluste auftreten oder darin, daß spezifische Typen von CPU-Schaltkreisen eingesetzt werden müssen, so daß vorhandene Software nicht mehr lauffähig ist. Erfindungsgemäß wird die Aufgabe durch die in den Patentansprüchen angegebenen Schaltungsanordnungen gelöst. Damit wird es ermöglicht, für die betreffenden Speichermittel gewissermaßen vorbeugend Anforderungen seitens der internen CPU auszulösen. Die Auslösung beginnt dabei zum frühestmöglichen Zeitpunkt genau dann, wenn die CPU eine neue Adresse bereitstellt. Wird dabei ein entsprechender Zugriff vermittelt (es liegen keine Anforderungen höherer Priorität vor), so werden die auf an sich bekannte Weise erregten Warteflipflops für interne Zugriffe sofort wieder zurückgesetzt, noch bevor die CPU deren Zustand abfragt. Zuvor wird die Stellung dieser Warteflipflops ausgewertet: ein gesetztes Warteflipflop zeigt an, daß der betreffende Zugriff tatsächlich zu den besagten Speichermitteln geführt werden soll. Damit wird das Gültigkeitsflipflop für die Dauer des Zyklus aktiviert. Anderenfalls bleibt das Gültigkeitsflipflop inaktiv, so daß der ausgeführte Zyklus keine Wirkungen hat. Durch die Anordnung der Auswahlschaltungen für die Speicheradressen wird gewährleistet, daß für diese vorbeugendThe object of the invention is a microcomputer arrangement for use in multi-core computer systems in such a way that even when using CPU types that do not have special precautions, waiting cycles are avoided when internal access to memory means, which is also for external access on the part of the System bus are accessible. The disadvantages of known microcomputer arrangements are either that such time losses occur or that specific types of CPU circuits must be used so that existing software is no longer executable. According to the invention the object is achieved by the circuit arrangements specified in the claims. This makes it possible to initiate preventive requirements on the part of the internal CPU for the storage medium in question. The triggering starts at the earliest possible time exactly when the CPU provides a new address. If a corresponding access is mediated (there are no higher-priority requests), the wait-flip-flops, which are excited in a known manner, are immediately reset for internal accesses, even before the CPU queries their status. Previously, the position of these Warteflipflops is evaluated: a set Warteflipflop indicates that the access in question should actually be led to the said storage means. This activates the valid flip-flop for the duration of the cycle. Otherwise, the validity flip-flop remains inactive, so that the executed cycle has no effects. The arrangement of the selection circuits for the memory addresses ensures that preventive for this

ausgeführten Zyklen die kürzesten Laufzeiten gewährleistet sind (die vorgeordnete disjunktive Verknüpfung wirkt im Sinne der Umschaltung erst dann, wenn andere als die besagten Zyklen auszuführen sind). Über die dem Schieberegister der Ablaufsteuerung nachgeordnete Auswahlschaltung wird in Anpassung an den tatsächlichen Zeitbedarf die Dauer der Zyklen verändert. Bei den vorbeugenden Zyklen werden die Steuerleitungen der Speichermittel eher erregt, und der Zyklus wird auch eher beendet. *the shortest running times are guaranteed (the upstream disjunctive link does not act in the sense of switching until other than the said cycles have been carried out). About the the shift register of the flow control downstream selection circuit is changed in adaptation to the actual time required, the duration of the cycles. In the preventive cycles, the control lines of the storage means are more likely to be energized, and the cycle is also terminated sooner. *

Ausführungsbeispielembodiment

Im folgenden Ausführungsbeispiel zeigen:In the following embodiment show:

Fig. 1: das Blockschaltbild einer erfindungsgemäß ausgebildeten Mikrorechneranordnung, Fig. 2: verschiedene Registerbelegungen,1 shows the block diagram of a microcomputer arrangement designed according to the invention, FIG. 2 shows different register assignments,

Fig. 3: die Interpretation der CPU-Adresse,3 shows the interpretation of the CPU address,

Fig.4-9: Details von Steuerschaltungen,Fig.4-9: Details of control circuits,

Fig. 10: den Ablauf eines LOOKAHEAD CYCLE,10 shows the sequence of a LOOKAHEAD CYCLE,

Fig. 11: den Ablauf eines anderweitigen Zyklus,11 shows the sequence of another cycle,

Fig.12,13: Details der Adressierung,Fig.12,13: Details of the addressing,

Fig. 14: Einzelheiten des RAM,14: details of the RAM,

Fig. 15: Details der Steuerschaltungen.Fig. 15: Details of the control circuits.

Es wird auf folgende Quellen aus der Literatur Bezug genommen:Reference is made to the following sources from the literature:

/1/ —: Busesformthe backbone of computer systems. Electronic Design 30 (1982) Vol. 23,S. 117-132. Ill Mathon, J.C: 32-Bit-Mikroprozessor der 2.Generation. Elektronik, 29.11.85, S.71-81./ 1 / -: Busesform the backbone of computer systems. Electronic Design 30 (1982) Vol. 23, p. 117-132. Ill Mathon, JC: 32-bit 2nd Generation Microprocessor. Electronics, 29.11.85, S.71-81.

/3/ Hedtke, R.: Mikroprezessorsysteme. Zuverlässigkeit, Testverfahren, Fehlertoleranz, Springer-Verlag, Berlin-Heidelberg-New York-Tokyo 1984./ 3 / Hedtke, R .: Microprecessor Systems. Reliability, Testing, Fault Tolerance, Springer-Verlag, Berlin-Heidelberg-New York-Tokyo 1984.

IAI Matthes, W.: Multimikrorechnersysteme. radio fernsehen efektronik Heft 4/1984 — Heft 12/1985 (Beitragsfolge). /5/ WP 154244 Speicheranordnung mit Fehlererkennungs- und Diagnoseeigenschaften, vorzugsweise für Mikrorechner. /6/ WP 156743 Bussystem zur Verbindung von logischen Funktionsmoduln. IAI Matthes, W .: Multimikrorechnersysteme. radio television efektronik Issue 4/1984 - Issue 12/1985 (Contribution episode). / 5 / WP 154244 Memory arrangement with error detection and diagnostic features, preferably for microcomputers. / 6 / WP 156743 Bus system for connecting logical function modules.

Ill WP 159916 Mikrorechneranordnung, vorzugsweise für den Einsatz in Mulimikrorechnersystemen. Ill WP 159916 Microcomputer arrangement, preferably for use in multi-core computer systems.

/8/ WP 233435 Speicheranordnung mit Eingang-/Ausgabeanschluß, vorzugsweise zum Einsatz in Multimikrorechnersystemen. /9/ WP-Anmeldung GOGF/288147.3 Speicheranordnung mit Fehlerkorrektur, vorzugsweise für Mikrorechner. Fig. 1 zeigt das Blockschaltbild einer erfindungsgemäß ausgebildeten Mikrorechneranordnung. Es handelt sich faktisch umeine modernisierte Version des Mikrorechners, der in 111 bzw. /4/detailiert beschrieben ist. Die Anordnung ist für den Anschluß an einen Systembus gem. /6/ bzw. /4/ausgelegt; vom Prinzip her können jedoch auch andere Bussysteme (vgl./i/) vorgesehen werden./ 8 / WP 233435 Memory arrangement with input / output connection, preferably for use in multi-microcomputer systems. / 9 / WP-Anmeldung GOGF / 288147.3 Memory arrangement with error correction, preferably for microcomputer. 1 shows the block diagram of a microcomputer arrangement designed according to the invention. It is in fact a modernized version of the microcomputer, which is described in detail in 111 and / 4 / respectively. The arrangement is suitable for connection to a system bus. / 6 / or / 4 / designed; In principle, however, other bus systems (vgl./i/) can be provided.

Die CPU 1 ist mit einem ROM 2 und E/A-Schaltkreisen 3 direkt verbunden. Dies ist in /4/, 111 bereits eingehend dargestellt; weiterhin sind derartige elementare Mikrorechneranordnungen in den vielen einschlägigen Firmenschriften bzw. Lehrbüchern ausführlich erläutert.The CPU 1 is directly connected to a ROM 2 and I / O circuits 3. This is already shown in detail in / 4 /, 111 ; Furthermore, such elementary microcomputer arrangements are explained in detail in the many relevant company documents or textbooks.

Beiden Schaltmitteln, die sowohl von der CPU 1 als auch vom Systembus aus zugänglich sind, handelt es sich um einen RAM 4, um Leseregister 5 sowie um Schreibregister 6.Both switching means, which are accessible both from the CPU 1 and from the system bus, are a RAM 4, read registers 5 and write register 6.

Der RAM 4 ist mit dynamischen RAM-Schaltkreisen aufgebaut, die eine Zuführung der Adresse in zwei aufeinanderfolgenden Abschnitten verlangen. Die Adresseneingänge sind einer ersten Auswahlschaltung 7 nachgeordnet, die einerseits an die niedrigwertigen Adressenleitungen der CPU 1 und andererseits an eine zweite Auswahlschaltung 8 angeschlossen ist. Diese wiederum ist einerseits mit höherwertigen gemeinsamen Adressenleitungen (COMMON ADRS) sowie andererseits mit einer dritten Auswahlschaltung 9 beschaltet, an die nied'erwertige gemeinsame Adressenleitungen sowie ein Refreshadressenzähler 10 angeschlossen sind. Alle gemeinsamen Adressenleitungen (COMMON ADRS) sind über CPU- und busseitige Koppelstufen 11,12 den Adressenleitungen der CPU 1 und des Systembus nachgeschaltet. Weiterhin sind gemeinsame Datenleitungen (COMMON DATA) vorgesehen, die über weitere CPU- bzw. busseitige Koppelstufen 13,14 an die entsprechenden Datenleitungen angeschlossen sind. Den gemeinsamen Datenleitungen sind die Dateneingänge des RAM 4 sowie die Schreibregister 6 direkt nachgeschaltet. Zusätzlich ist ein Anschluß für einen externen Diagnoseadapter vorgesehen, wie dies bereits in 111 dargestellt ist.The RAM 4 is constructed with dynamic RAM circuits which require feeding the address in two consecutive sections. The address inputs are arranged downstream of a first selection circuit 7, which is connected on the one hand to the low-order address lines of the CPU 1 and on the other hand to a second selection circuit 8. This in turn is connected on the one hand with higher-value common address lines (COMMON ADRS) and on the other hand with a third selection circuit 9, are connected to the nied'erwert common address lines and a refresh address counter 10. All common address lines (COMMON ADRS) are connected via CPU and bus-side coupling stages 11,12 the address lines of the CPU 1 and the system bus. Furthermore, common data lines (COMMON DATA) are provided, which are connected via further CPU or bus-side coupling stages 13, 14 to the corresponding data lines. The common data lines, the data inputs of the RAM 4 and the write register 6 are connected directly downstream. In addition, a terminal for an external diagnostic adapter is provided, as already shown in FIG . 111 .

Die Datenausgänge des RAM 4 sind mit einer Leseauswahlschaltung 15 verbunden, die weiterhin über gemeinsame Leseleitungen (COMMON READ) mit allen Leseregistern 5 beschaltet ist. Der Leseauswahlschaltung 15 sind ein Bus-Leseregister 16 und ein CPU-Leseregister 17 nachgeordnet, wobei das Bus-Leseregister 16 direkt mit den Daten leitungen des Systembus und das CPU-Leseregister 17 direkt mit den Datenleitungen der CPU 1 verbunden sind. Schließlich sind Steuerschaltungen 18 vorgesehen.The data outputs of the RAM 4 are connected to a read select circuit 15, which is further connected to all the read registers 5 via common read lines (COMMON READ). The read select circuit 15 are a bus read register 16 and a CPU read register 17 downstream, the bus read register 16 are directly connected to the data lines of the system bus and the CPU read register 17 directly to the data lines of the CPU 1. Finally, control circuits 18 are provided.

Alle Datenwege in der Anordnung sind 8 Bits breit. Die CPU 1 liefert 16-Bit-Adressen, der Systembus hat 20 Adressenleitungen (/6/); davon dienen die vier höchstwertigen zur Auswahl der Slave-Einrichtung.All data paths in the array are 8 bits wide. The CPU 1 supplies 16-bit addresses, the system bus has 20 address lines (/ 6 /); of these, the four most significant ones are used to select the slave device.

Der RAM 4 hat eine Kapazität von 64kBytesund ist mit einer Fehlerkorrektureinrichtung ausgerüstet. Dazu werden je Byte neben 8 Datenbits 4 Korrekturbits gespeichert, die gemäß einem Fehlerkorrekturcode (ECC; vgl. /31) so gebildet werden, daß 1-Bit-Fehler beim Lesen korrigiert werden können.The RAM 4 has a capacity of 64k bytes and is equipped with an error correcting device. For this purpose, aside from 8 data bits, 4 correction bits are stored per byte, which are formed in accordance with an error correction code (ECC, compare / 31) so that 1-bit errors can be corrected during reading.

Alternativ zur Fehlerkorrektur ist ein Vergleichsstop-Modus gem. /5/ einstellbar. Zu den Leseregistern 5 gehören:As an alternative to error correction, a comparison stop mode acc. / 5 / adjustable. The read registers 5 include:

— Ein BACKUP-Register- A BACKUP register

— eine Register zum Lesen der ECC-Bits des RAM 4 sowie von StatusbitsA register for reading the ECC bits of the RAM 4 as well as status bits

— ein Register zum Lesen der Belegung des Diagnoseadapter-Anschlusses (dazu gem. Fig. 1 eingangsseitig am COMMON DATA angeschlossen).A register for reading the assignment of the diagnostic adapter connection (for this purpose, connected to the COMMON DATA on the input side according to FIG.

Die Schreibregister 6 umfassen:The write registers 6 include:

— ein CONTROL-Register- a CONTROL register

— ein DIAG MODE-Register- a DIAG MODE register

— ein BUSADRS-Register- a BUSADRS register

— ein Register auf dem anschließbaren Diagnoseadapter.- a register on the connectable diagnostic adapter.

Die Belegung wesentlicher Register ist aus Fig. 2 ersichtlich. Die Register CONTROL, DIAG MODE und BUS ADRS entsprechen allgemein der Beschreibung in IAI, /7/. BUS ADRS ist dabei völlig identisch zu diesen Beschreibungen belegt, die Belegung von CONTROL und DIAG MODE erschließt sich durch den Vergleich mit den genannten Beschreibungen. Wesentliche Besonderheiten sind:The assignment of essential registers is shown in FIG. 2. The registers CONTROL, DIAG MODE and BUS ADRS generally correspond to the description in IAI, / 7 /. BUS ADRS is completely identical to these descriptions, the assignment of CONTROL and DIAG MODE is revealed by comparison with the descriptions given above. Key features include:

— Im CONTROL-Register ist die Angabe einer Segmentadresse vorgesehen, um zu allen 64kBytesdes RAM 4 zugreifen zu können. Bei normalen Zugriffen sind die niederen 32kBytes in 8 Segmenten zu 4kBytes erreichbar. Alternativ dazu kann die CPU 1 den gesamten RAM 4 direkt adressieren, wenn UNSEG MODE aktiviert ist. Dann sind weder ROM- noch Buszugriffe (als Master) möglich. Die Schreibregister 6 selbst sind alternativ über E/A-Zugriffe zugänglich.The CONTROL register specifies the specification of a segment address in order to be able to access all 64 kbytes of RAM 4. For normal access, the lower 32kBytes are achievable in 8 segments of 4kBytes. Alternatively, the CPU 1 may directly address the entire RAM 4 when UNSEG MODE is activated. Then neither ROM nor bus accesses (as master) are possible. The write registers 6 themselves are alternatively accessible via I / O accesses.

Ist ECC BIT ACCESS aktiv, so kann zu den ECC-Bitpositionen des RAM 4 vom Systembus aus direkt zugegriffen werden. Entsprechende Zugriffe seitens der CPU 1 sind möglich,wenndieBits7,6,5 des CONTROL-Registers sämtlich gesetzt sind. Der gesamte Adressenraum ist dabei in 16 Segmente zu 4kBytes unterteilt. Beim Lesen erscheinen in der höheren Tetrade des Daten bytes dabei einige allgemeine Status-Informationen (Fig. 2 unten).If ECC BIT ACCESS is active, the ECC bit positions of RAM 4 can be accessed directly from the system bus. Corresponding accesses by the CPU 1 are possible if the bits 7,6,5 of the CONTROL register are all set. The entire address space is divided into 16 segments of 4 kbytes. When reading, some general status information appears in the higher nibble of the data bytes (Figure 2 below).

— DISABLE REFRESH gestattet ein Außerbetriebsetzen desRefreshadressenzählers 10 zu diagnostischen Zwecken.DISABLE REFRESH allows for the resetting address counter 10 to be disabled for diagnostic purposes.

— ENABLE LOOKAHEAD dient zum Einschalten der eigentlichen erfindungsgemäßen Betriebsweise.- ENABLE LOOKAHEAD is used to turn on the actual operation of the invention.

— Das BACKUP-Register nimmt die höherwertigen Positionen der RAM-Adresse auf. Es wird im Zusammenhang mit wesentlichen Aspekten der Fehlerkorrektur weiter unten beschriebenen.- The BACKUP register records the higher-order positions of the RAM address. It is described in the context of essential aspects of error correction below.

Fig.3 gibt einen Überblick über die Interpretation der CPU-AdresseFig. 3 gives an overview of the interpretation of the CPU address

Die Belegungen a), b), d), e) entsprechen voll den in IAI, ΠΙ bereits beschrieben.The assignments a), b), d), e) fully correspond to those already described in IAI, ΠΙ .

Belegung c) dient dazu, zu einem 4kByte-Segment im RAM 4 zuzugreifen, wobei das Segment selbst über das CONTROL-Register ausgewählt wird. Für normale Zugriffe gibt es'8, für Zugriffe zu den ECC-Bits 16 Segmente.Assignment c) is used to access a 4 kbyte segment in RAM 4, the segment itself being selected via the CONTROL register. For normal access there are 8, for access to the ECC bits 16 segments.

Bei Registerzugriffen (b) zu den Schreibregistern wird automatisch beim Schreiben eine Kopie im RAM 4 abgelegt; beim Lesen wird lediglich diese Kopie gelesen (vgl. ΠI). Dabei wird jede entsprechende Adresse der Form 2xxrH in eine solche der Form 8xxrH gewandelt, so daß die genauen Registeradressen beliebig, d.h. z.B. gem./4/ oder gem./7/, verteilt werden können. • Alternativ dazu können die Schreibregister 5 über E/A-Ausgabezugriffe geladen werden.In the case of register accesses (b) to the write registers, a copy is automatically stored in the RAM 4 when writing; when reading only this copy is read (see ΠI). In this case, each corresponding address of the form 2xxrH is converted into one of the form 8xxrH, so that the exact register addresses can be distributed arbitrarily, ie, for example, according to / 4/ or gem./7/. • Alternatively, the write registers 5 can be loaded via I / O output accesses.

Die für die erfindungsgemäße Ausgestaltung wesentlichen Teile der Steuerschaltungen 18 sind in den Fig.4-9 dargestellt. Ansonsten unterscheiden sich die Steuerschaltungen 18 prinzipiell nicht von den in /4/-/8/ in verschiedenen Zusammenhängen ausführlicher beschriebenen Schaltungslösungen. Fig.4 veranschaulicht die Decodierung der Zugriffe seitens der CPU 1. Dazu sind höherwertige CPU-Adressenleitungen sowie Ausgänge des CONTROL-Registers an einen ROM angeschlossen, derfür jede Adressen-und Registerbelegung gem. Fig. 2, 3 jeweils eine von drei Zugriffssteuerleitungen erregt:The parts of the control circuits 18 which are essential for the embodiment according to the invention are shown in FIGS. 4 to 9. Otherwise, the control circuits 18 in principle do not differ from the circuit solutions described in more detail in / 4 / - / 8 / in various contexts. 4 illustrates the decoding of the accesses by the CPU 1. For this purpose, higher-order CPU address lines as well as outputs of the CONTROL register are connected to a ROM, which is used for each address and register assignment according to FIG. Fig. 2, 3 each excited one of three access control lines:

— ROM ACCESS kennzeichnet Zugriffe zum ROM 2; ausgeführt bei einer Adressenbelegung gem. Fig. 3a)ROM ACCESS identifies accesses to ROM 2; executed at an address assignment acc. Fig. 3a)

— MASTER ACCESS kennzeichnet Zugriffe über den Systembus (als Master); ausgeführt bei einer Adressenbelegung gem. Fig.3d)- MASTER ACCESS identifies accesses via the system bus (as master); executed at an address assignment acc. 3 d)

— LOCAL ACCESS kennzeichnet Zugriffe zum RAM 4 bzw. zu den Registern 5, 6; ausgeführt bei Adressenbelegungen gem. Fig.3b),c),e).- LOCAL ACCESS identifies accesses to the RAM 4 or to the registers 5, 6; executed at address assignments acc. 3b), c), e).

Weiterhin wird LOCAL ACCESS bei allen Adressenbelegungen wirksam, wenn UNSEG MODE im CONTROL-Register aktiv ist und kein interner Zugriff zu den ECC-Bits erfolgt.Furthermore, LOCAL ACCESS becomes effective for all address assignments when UNSEG MODE is active in the CONTROL register and no internal access is made to the ECC bits.

Mit dieser Beschreibung ist es unproblematisch, die Booleschen Gleichungen zur Belegung des ROM aufzustellen.With this description, it is easy to set up the Boolean equations for occupying the ROM.

Fig. 5 zeigt einen Ausschnitt aus der Wartesignalschaltung, deren weitere Teile den jeweiligen in IAI, 111 beschriebenen Schaltmitteln entsprechen.Fig. 5 shows a section of the wait signal circuit, whose other parts correspond to the respective switching means described in IAI, 111 .

Für die CPU-Zugriffe, die einer Vermittlung bedürfen, sind Warteflipflops 19-21 vorgesehen, und zwarFor the CPU accesses that require switching, waiting flip-flops 19-21 are provided, namely

— Flipflop 19fürE/A-Zugriffezu den Registern 6; dabei ist REGISTER I/O eine über nicht dargestellte Decoder für E/A-Adressen der CPU 1 angesteuerte Zugriffsleitung, lORQ ist die entsprechende Anforderungsleitung der CPU 1Flip-flop 19 for I / O accesses to registers 6; In this case, REGISTER I / O is an access line driven via a decoder, not shown, for I / O addresses of the CPU 1, IORQ being the corresponding request line of the CPU 1

— Flipflop 20 für lokale Zugriffe- Flip-flop 20 for local accesses

— Flipflop 21 für Master-Zugriffe.- Flip-flop 21 for master accesses.

MREQ ist dabei die entsprechende Anforderungsleitung der CPU 1.MREQ is the corresponding request line of the CPU 1.

Die Ausgänge der Warteflipflops 19, 20 für interne Zugriffe sind in disjunktiver Verknüpfung einem Gültigkeitsflipflop 22 vorgeschaltet, dessen Ausgang wiederum in disjunktiver Verknüpfung mit den an sich vorgesehenen Rücksetzleitungen'auf die Rücksetzeingänge der besagten Wartflipflops 19, 20 zurückgeführt ist. Das Gültigkeitsflipflop 22 ist weiterhin mit einer zum Takteingang der CPU 1 synchron erregten Taktleitung sowie einer Zyklussteuerleitung beschaltet.The outputs of the Warteflipflops 19, 20 for internal accesses are connected in disjunctive connection a validity flip-flop 22, the output of which is in turn returned to the reset inputs of the said Wartflipflops 19, 20 in disjunctive link with the per se provided reset lines. The valid flip-flop 22 is further connected to a clock line synchronized with the clock input of the CPU 1 and a cycle control line.

Fig. 6 illustriert die Erregung der Anforderungsleitungen für Zugriffe seitens der CPU 1. Die Leitungen für Master- und lokale Zugriffe (MASTER REQUEST, LOCAL REQUEST) werden mit Schaltmitteln erregt, wie sie bereits in IAI, 111 beschrieben sind. Zu. -»zilch ist eine weitere Anforderungsleitung (LOOKAHEAD REQUEST) einer konjunktiven Verknüpfung 37 einer Erlaubnisleitung mit einer NOR-Verknüpfung 33 aller Anforderungsleitungen der CPU 1 nachgeschaltet. Die Erlaubnisleitung ist an programmtechnisch stellbare Schaltmittel angeschlossen, im konkreten Fall an das DIAG MODE-Register.Fig. 6 illustrates the excitation of the request lines for accesses by the CPU 1. The master and local access lines (MASTER REQUEST, LOCAL REQUEST) are energized by switching means as already described in IAI, 111 . To. In addition, a further request line (LOOKAHEAD REQUEST) of a conjunctive link 37 of a permit line is connected downstream with a NOR link 33 of all request lines of the CPU 1. The permission line is connected to programmable switching means, in this case to the DIAG MODE register.

Generell ist die Erlaubnisleitung vorrangig aus diagnostischen Gründen vorgesehen und kann somit auch weggelassen werden. Dann ist die besagte Anforderungsleitung direkt der NOR-Verknüpfung nachzuschalten.In general, the permit line is provided primarily for diagnostic reasons and can therefore be omitted. Then the said request line is directly followed by the NOR operation.

Die in Fig. 6 weiterhin konjunktiv vorgeschaltete NAND-Verknüpfung 38 hat lediglich technische Gründe (Unterdrücken interner Zugriffe, wenn vom Systembus „selektives Rücksetzen" signalisiert wird, vgl. z.B. IAI) und wird deshalb nicht weiter berücksichtigt.The NAND link 38, which is also connected conjunctively in FIG. 6, has only technical reasons (suppressing internal accesses if the system bus signals "selective resetting", cf., for example, IAI) and is therefore not considered further.

Fig.7zeigtdieaus/4/,/7/,/8/ bereits an sich bekannte Anordnung aus einem Anforderungsregister 23 und einem über ein Prioritätsnetzwerk 24 nachgeordneten Zyklusregister 25.FIG. 7 shows from FIG. 4 /, / 7 /, / 8 / an already known arrangement of a request register 23 and a cycle register 25 arranged downstream via a priority network 24.

Beide Register 23, 25 sind um je eine Position für die in Fig. 6 dargestellte weitere Anforderungsleitung erweitert; das Prioritätsnetzwerk 24 ist so ausgebildet, daß die betreffende Anforderung die niedrigste Priorität hat.Both registers 23, 25 are each extended by one position for the further request line shown in FIG. 6; the priority network 24 is designed such that the request in question has the lowest priority.

Wesentlich ist, daß das Anforderungsregister 23 mit einer Taktleitung beschältet ist, die synchron zum Takteingang der CPU 1 erregt wird.It is essential that the request register 23 is beschältet with a clock line which is energized synchronously with the clock input of the CPU 1.

Die Ablaufsteuerung erfolgt ebenfalls auf bekannte Weise (/4/.../9/) gem. Fig.8 durch ein Schieberegister 26 mit nachgeordnetem Endeflipflop 27. Das Schieberegister 26 gibt zeitversetzte Steuerimpulse (P 1... P8) ab, sofern ein Zyklus vermittelt wurde, bis das Ende-Flipflop 27 aktiviert wird. Abweichend von den bereits bekannten Lösungen ist zur Erregung des Ende-Flipflop 27 und der Steuerleitungen des RAM 4 (RAS, CAS, SWITCH ADRS) gem. Fig.9 eine Auswahlschaltung 28 vorgesehen, die mit jeweils verschiedenen Ausgängen des Schieberegisters 26 beschaltet ist. Deren Auswahleingang ist ein Flipflop 29 vorgeordnet, dessen Takteingang mit dem Ende-Flipflop 27 und dessen Rücksetzeingang mit der besagten zusätzlichen Position des Zyklusregisters 25 beschaltet ist. Die Steuerleitungen des RAM 4 sind der Auswahlschaltung 28 in konjunktiver Verknüpfung 34 mit Zugriffserlaubnisleitungen nachgeschaltet, die ihrerseits mit der besagten zusätzlichen Position des Zyklusregisters 25 disjunktiv (35) verknüpft sind.The sequence control is also carried out in a known manner (/4/.../9/) acc. 8 by a shift register 26 with downstream Endeflipflop 27. The shift register 26 outputs time-offset control pulses (P 1 ... P8), if one cycle was mediated until the end flip-flop 27 is activated. Notwithstanding the already known solutions for excitation of the end flip-flop 27 and the control lines of the RAM 4 (RAS, CAS, SWITCH ADRS) gem. 9, a selection circuit 28 is provided, which is connected to different outputs of the shift register 26. Their selection input is preceded by a flip-flop 29 whose clock input is connected to the end flip-flop 27 and whose reset input is connected to said additional position of the cycle register 25. The control lines of the RAM 4 are connected downstream of the selection circuit 28 in conjunctive link 34 with access permission lines, which in turn are associated with the said additional position of the cycle register 25 disjunctive (35).

Bei der erfindungsgemäßen Ausgestaltung handelt es sich darum, unnötige Wartezyklen der CPU 1 zu vermeiden. Dies wird erreicht, indem zum RAM 4 gewissermaßen vorbeugend Zugriffs-Anforderungen gestellt und Zugriffe ausgeführt werden.In the embodiment according to the invention is therefore to avoid unnecessary waiting cycles of the CPU 1. This is achieved by providing access to RAM 4 to a certain extent and by making accesses.

Solche Zugriffe werden im folgenden als LOOKAHEAD-Zugriffe bezeichnet. Bei praktisch allen Typen von CPU-Schaltkreisen wird zunächst die Adresse bereitsgestellt, und dann wird die betreffende Anforderungsleitung (hier: MREQ) erregt.Such accesses are referred to below as LOOKAHEAD accesses. For virtually all types of CPU circuits, the address is first provided and then the request line (here: MREQ) is energized.

Dynamische RAMs erfordern eine zeitmultiplexe Zuführung der Adresse (niederer Teil mit RAS, höherer Teil mit CAS).Dynamic RAMs require a time-division supply of the address (lower part with RAS, higher part with CAS).

Die erfindungsgemäße Ausbildung der Mikrorechneranordnung gestattet es nun, bereits dann vorbeugend eine Anforderung zu stellen, wenn die CPU eine Adresse bereitgestellt hat. Dies ist der Fall, wenn keine ihrer Anforderungsleitungen erregt ist (vgl. die NOR-Verknüpfung 33 in Fig. 6) und eine bestimmte Flanke des CPU-Taktes wirksam wird (hier: ansteigende Flanke).The microcomputer arrangement according to the invention now makes it possible to preemptively make a request when the CPU has provided an address. This is the case when none of their request lines is energized (see NOR link 33 in Figure 6) and a particular edge of the CPU clock becomes active (here, rising edge).

Liegen keine höher priorisierten Anforderungen vor, wird somit über das Anforderungsregister 23 sofort während der Bereitstellung einer Adresse seitens der CPU 1 ein entsprechender Zyklus (LOOKAHEAD CYCLE im Zyklusregister 25) veranlaßt.If there are no higher-priority requests, a corresponding cycle (LOOKAHEAD CYCLE in the cycle register 25) is thus prompted by the request register 23 immediately during the provision of an address by the CPU 1.

Damit wird sofort Flipflop 29 zurückgesetzt, so daß über die Auswahlschaltung 28 zeitlich früh erregte Ausgänge des Schieberegisters 26 für die Ansteuerung des RAM 4 wirksam werden und auch END entsprechend zeitig (nach P6) gebildet wird.This immediately flip-flop 29 is reset, so that via the selection circuit 28 early excited outputs of the shift register 26 for the control of the RAM 4 are effective and END is formed according to timely (P6).

Unabhängig von der konkreten CPU-Adresse werden durch LOOKAHEAD CYCLE die Steuersignale für den RAM 4 freigegebenRegardless of the specific CPU address, the control signals for the RAM 4 are enabled by LOOKAHEAD CYCLE

Da die erste Auswahlschaltung 7 vor den Adresseneingängen des RAM 4 direkt mit dem niederen Teil der CPU-Adresse beschaltet ist, ergibt sich eine minimale Laufzeit, so daß das frühzeitige Abgeben von Steuerimpulsen technisch durchführbar wird. Somit kann ein solcher Zyklus stets innerhalb des von der CPU 1 vorgegebenen Zeitrahmens zu Ende geführt werden.Since the first selection circuit 7 is connected in front of the address inputs of the RAM 4 directly to the lower part of the CPU address, there is a minimum runtime, so that the early delivery of control pulses is technically feasible. Thus, such a cycle can always be completed within the time frame specified by the CPU 1.

Wartezyklen sind nicht notwendig. Während der Zyklus bereits läuft, werden die Adressen gem. Fig.4 decodiert. Auf die jeweils nächste fallende Taktflanke hin aktiviert die CPU 1 MREQ (bzw. lORQ). Es sind nun zwei Fälle möglich:Waiting cycles are not necessary. While the cycle is already running, the addresses are gem. Fig. 4 decoded. The CPU activates 1 MREQ (or lORQ) on the next falling clock edge. There are now two possible cases:

1. Es handelt sich tatsächlich um einen lokalen Zugriff zum RAM 4 bzw. zu den Registern 5,6.1. It is actually a local access to the RAM 4 or to the registers 5,6.

2. Es handelt sich um einen anderweitigen Zugriff.2. It is a different access.

Nur im ersten Fall wird eines der Warteflipflops 19, 20 für interne Zugriffe erregt.Only in the first case, one of the Warteflipflops 19, 20 is energized for internal accesses.

Dies führt zum Einschalten des Gültigkeitsflipflop 22, wodurch die Warteflipflops 19,20 sofort wieder zurückgesetzt werden, noch bevor die CPU 1 deren Stellung auswertet.This leads to switching on the validity flip-flop 22, whereby the Warteflipflops 19,20 reset immediately before the CPU 1 evaluates their position.

Im zweiten Fall wird das Gültigkeitsflipflop 22 nicht erregt; der Zyklus läuft also gewissermaßen neben dem eigentlichen Zugriff (z. B. zum ROM 2 oder als Master über den Systembus) ab. Dabei ist es von Bedeutung, ein Verfälschen des Inhaltes des RAM 4 bzw. der Schreibregister 5 zu vermeiden und das unberechtigte Aufschalten gelesener Information zu verhindern. Dies kann direkt durch entsprechende konjunktive Verknüpfungen 39 der jeweiligen Steuerleitungen mit einer disjunktiven Verknüpfung 36 des Gültigkeitsflipflop 22 und der invertierten zusätzlichen Position des Zyklusregisters 25 erreicht werden, so daß die Steuerwirkungen nur außerhalb von LOOKAHEAD-Zyklen oder in „gültigen" LOOKAHEAD-Zyklen eintreten. Mit dem Ausschalten des Ende-Flipflop 27 wird Flipflop 29 wieder aktiv.In the second case, the valid flip-flop 22 is not energized; The cycle therefore runs, as it were, next to the actual access (eg to ROM 2 or as master via the system bus). It is important to avoid falsification of the contents of the RAM 4 or the write register 5 and to prevent the unauthorized intrusion of read information. This can be achieved directly by corresponding conjunctive junctions 39 of the respective control lines with a disjunctive link 36 of the validity flip-flop 22 and the inverted additional position of the cycle register 25, so that the control effects only occur outside of LOOKAHEAD cycles or in "valid" LOOKAHEAD cycles. With the switching off of the end flip-flop 27, flip-flop 29 becomes active again.

In allen Zyklen, die keine LOOKAHEAD-Zyklen sind, werden somit die Steuersignale für den RAM 4 zeitlich später abgegeben (über die Auswahlschaltung 28), wodurch die verlängerten Adressenlaufzeiten (über die Auswahlschaltungen 7-9) sowie anderweitige Umsteuerzeiten berücksichtigt werden.Thus, in all cycles that are not LOOKAHEAD cycles, the control signals for the RAM 4 are delivered later in time (via the selection circuit 28), taking into account the extended address transit times (via the selection circuits 7-9) as well as other reversal times.

Die beschriebenen Abläufe sind in Fig. 10 (LOOKAHEAD-Zyklus) und Fig. 11 (anderweitiger Zyklus) illustriert. Fig. 10 veranschaulicht die Zeitverhältnisse beim zeitkritischsten CPU-Zugriff (Befehlslesen). Solche Zugriffe erfordern eine schnellstmögliche Bereitstellung der gelesenen Information für die CPU 1. Dies ist erfindungsgemäß dadurch gewährleistet (Fig.1), indem für die Lese-Information aus dem RAM 4 die kürzesten Laufzeiten bis zur CPU über Leseauswahlschaltung 15 und CPU-Leseregister 17 garantiert werden, insbesondere durch direkte Aufschaltung des Leseregisters 17 auf die Datenleitungen der CPU 1 (unter Umgehung aller Koppelstufen). Die Leseregister 16,17 selbst werden so angesteuert, wie dies bereits in /8/ beschrieben ist.The procedures described are illustrated in Fig. 10 (LOOKAHEAD cycle) and Fig. 11 (other cycle). Fig. 10 illustrates the timing of time-critical CPU access (instruction read). Such accesses require the fastest possible provision of the read information for the CPU 1. This is ensured in accordance with the invention (FIG. 1) by guaranteeing the shortest run times for the read information from the RAM 4 via the read select circuit 15 and the CPU read register 17 be, in particular by direct connection of the read register 17 to the data lines of the CPU 1 (bypassing all coupling stages). The read registers 16, 17 themselves are activated as already described in / 8 /.

Die entscheidenden Adressenpfade sind in den Fig. 12,13 näher illustriert.The crucial address paths are illustrated in more detail in FIGS. 12, 13.

Gemäß Fig. 12 sind die Koppelstufen 11 für die Aufschaltung der CPU-Adresse auf die gemeinsamen Adressenleitungen so mit der Zyklussteuerleit'>ng für Slave-Zugriffe (SLAVE CYCLE) beschaltet, daß sie nur bei solchen Zugriffen die gemeinsamen Adressenleitungen freigeben. Ansonsten sind die Koppelstufen 11 ständig aktiviert, so daß bei fortlaufenden LOOKAHEAD-Zyklen keine Umschaltzeiten wirksam werden. ·According to FIG. 12, the coupling stages 11 for connecting the CPU address to the common address lines are connected to the cycle control line for slave accesses (SLAVE CYCLE) in such a way that they enable the common address lines only in the case of such accesses. Otherwise, the coupling stages 11 are constantly activated, so that no switching times take effect with consecutive LOOKAHEAD cycles. ·

Die den Koppelstufen 11 vorgeordnete Auswahlschaltung dient dazu, bei Master-Zugriffen (mit Adressen gem. Fig.3d) die Segmentadresse aus dem Busadressenregister (s. Fig.2) in die bei den höchstwertigen Positionen einzuspeisen. In Fig. 13 sind die Adressen-Auswahlschaltungen 7-9 näher dargestellt.The selection circuit upstream of the coupling stages 11 serves to feed the segment address from the bus address register (see Fig. 2) into the most significant positions in the case of master accesses (with addresses according to Fig. 3d). In Fig. 13, the address selecting circuits 7-9 are shown in more detail.

Auswahlschaltung 7 wird so angesteuert, daß der niedere Teil der CPU-Adresse stets durchgesteuert wird, sofern keine spezifischen Bedingungen auftreten.Selection circuit 7 is controlled so that the lower part of the CPU address is always controlled by, unless specific conditions occur.

Dazu ist der Auswahleingang in disjunktiver Verknüpfung 40 mit der Adressenumschaltleitung des RAM 4 (SWITCH ADRS) sowie allen verbleibenden Ausgangsleitungen des Zyklusregisters 25 mit Ausnahme von LOOKAHEAD CYCLE beschaltet. Die Umsteuerung wird somit nur wirksam, wenn der höherwertige Teil der RAM-Adresse zuzuführen ist bzw. wenn andere Zyklen als LOOKAHEAD-Zyklen auszuführen sindFor this purpose, the selection input is connected in disjunctive link 40 with the address switching line of the RAM 4 (SWITCH ADRS) and all remaining output lines of the cycle register 25 except LOOKAHEAD CYCLE. The reversal thus becomes effective only if the higher-order part of the RAM address is to be supplied or if cycles other than LOOKAHEAD cycles are to be executed

Auswahlschaltung 8 steuert bei aktiven SWITCH ADRS den höherwertigen Teil der Adresse durch, ansonsten den Selection circuit 8 controls the higher-order part of the address when the SWITCH ADRS is active, otherwise the

niederwertigen, den über Auswahlschaltung 9 bei Refreshzyklen durch den Inhalt des Refreshadressenzählers 10 und sonst durch den niederwertigen Teil der gemeinsamen Adressenleitungen gebildet wird.which is formed via selection circuit 9 during refresh cycles by the content of refresh address counter 10 and otherwise by the low-order part of the common address lines.

Der höherwertige Teil der Adresse am Eingang der Auswahlschaltung 8 besteht einerseits direkt aus Teilen der gemeinsamen Adressenleitungen und andererseits aus Leitungen (HI ADRS 15-12), die an nicht näher beschriebene Steuermittel angeschlossen sind.The higher part of the address at the input of the selection circuit 8 consists on the one hand directly from parts of the common address lines and on the other hand from lines (HI ADRS 15-12), which are connected to control means not described in detail.

Der Auswahlschaltung 8 ist weiterhin das BACKUP-Register (Fig. 2) nachgeschaltet, das seinerseits an gemeinsame Leseleitungen vorder Lese-Auswahlschaltung 15 angeschlossen ist.The selection circuit 8 is further followed by the BACKUP register (Figure 2), which in turn is connected to common read lines before the read select circuit 15.

In Fig. 14 sind Einzelheiten des RAM 4 zusammen mit der besagten Lese-Auswahlschaltung 15 dargestellt.In Fig. 14, details of the RAM 4 are shown together with the said read selection circuit 15.

Der eigentliche RAM nimmt 64k Worte zu 12 Bits (8 Daten-und 4 ECC-Bits) auf, um die Korrektur von 1-Bit-Fehlern zu ermöglichen. Zur Bildung der ECC-Bits ist ein als ROM 30 realisierter Zuordner vorgeschaltet, der zusätzlich mit einer Umschaltleitung (ECC DATA ACCESS) beschaltet ist, die über nicht dargestellte weitere Zuordner letztlich dem CONTROL-Register (Fig. 2) nachgeordnet ist. Im besagten ROM 30 ist sowohl die Bildung des Fehlerkorrekturcodes als auch die direkte Weitergabe der niederwertigen vier Datenbits vorgesehen (bei aktivem ECC DATA ACCESS werden diese direkt in die entsprechenden Positionen des RAM eingetragen).The actual RAM receives 64k words in 12 bits (8 data and 4 ECC bits) to allow the correction of 1-bit errors. To form the ECC bits, a converter implemented as a ROM 30 is connected upstream, which is additionally connected to a changeover line (ECC DATA ACCESS), which is ultimately arranged downstream of the CONTROL register (FIG. 2) via unconfigured further assigners. In said ROM 30, both the formation of the error correction code and the direct transfer of the low-order four data bits are provided (with active ECC DATA ACCESS these are entered directly in the corresponding positions of the RAM).

Dem eigentlichen RAM ist eine Korrekturnetzwerk 31 nachgeordnet und direkt an die Leseauswahlschaltung 15 angeschlossen.The actual RAM is followed by a correction network 31 and connected directly to the read selection circuit 15.

Dieses realisiert folgende Funktionen:This implements the following functions:

— Erkennung von 1-Bit-Fehlern in den 12-Bit-Worten; dabei wird die Fehlerleitung ECC EFFECTIVE erregt.- Detection of 1-bit errors in the 12-bit words; doing so the ECC EFFECTIVE error line is energized.

— Korrektur jener 1-Bit-Fehler, die die 8 Datenbits betreffen. Die Bildung und Auswertung von Fehlerkorrektucodes ist in der Literatur (z. B. /3/) ausführlich beschrieben, so daß die Darstellung von Einzelheiten entfallen kann.- Correction of those 1-bit errors that affect the 8 data bits. The formation and evaluation of error correction codes is extensively described in the literature (eg, / 3 /), so that the presentation of details can be omitted.

Wesentlich ist, daß Datenbits beim Lesen sofort korrigiert werden, da bei den LOOKAHEAD-Zyklen keine Möglichkeit mehr besteht, den Ablauf im Fehlerfall anzuhalten, zu modifizieren oder dergleichen. Fehlerkorrekturprinzipien, die voraussetzen, daß der Zyklus im Fehlerfall verlängert wird (z.B. nach /9/), sind hier somit nicht einsetzbar.It is essential that data bits are corrected immediately during reading, since with the LOOKAHEAD cycles there is no longer any possibility of stopping, modifying or the like in the event of a fault. Error correction principles that assume that the cycle is extended in the event of a fault (for example, after / 9 /) are therefore not applicable here.

In der erfindungsgemäßen Anordnung ist stattdessen vorgesehen, daß über nicht dargestellte, aber leicht realisierbare Schaltmittel im Fehlerfall (ECC EFFECTIVE = 1) ein Interrupt in der CPU 1 ausgelöst wird. Eine entsprechende ROM-residente Software-Routine inspiziert daraufhin den RAM 4 und korrigiert den RAM-Inhalt durch programmseitiges Einschreiben.In the arrangement according to the invention, instead, it is provided that an interrupt in the CPU 1 is triggered by means of switching means which are not shown, but which can easily be implemented in the event of a fault (ECC EFFECTIVE = 1). A corresponding ROM-resident software routine then inspects the RAM 4 and corrects the RAM content by program writing.

Damit nicht der gesamte RAM durchmustert werden muß, ist das BACKUP-Register vorgesehen. Dies wird in jedem Zyklus mit dem höherwertigen Teil der Adresse geladen. Das Laden wird verhindert, sofern ein Fehler beim RAM-Lesen erkannt wurde.So that not all the RAM must be screened, the BACKUP register is provided. This is loaded in each cycle with the higher order part of the address. Loading is prevented if a RAM read error has been detected.

(Diese Art des Betreibens von BACKUP-Registern ist in /6/ beschrieben.) Damit ist der höhere Teil der Adresse des fehlerhaften Wortes für die Software zugänglich.(This way of operating BACKUP registers is described in / 6 /.) This makes the higher part of the address of the erroneous word available to the software.

Weiterhin ist wesentlich, daß der Weg über das Korrekturtietzwerk31 beim Lesen sehr schnell durchlaufen wird. Deshalb ist der direkte Anschluß an die Leseauswahlschaltung 15 vorgesehen. Die verbleibenden Quellen für Leseinformation sind über gemeinsame Leseleitungen (COMMON READ) an die zweiten Eingänge der Leseauswahlschaltung 15 angeschlossen. In Fig.Furthermore, it is essential that the path through the correction network 31 during reading is traversed very quickly. Therefore, the direct connection to the read select circuit 15 is provided. The remaining sources of read information are connected to the second inputs of the read select circuit 15 via common read lines (COMMON READ). In Fig.

ist dies anhand der Koppelstufe zum Lesen derECC-Bitpositionen und zusätzlicher Statusbits (Fig.2) dargestellt. Die Auswahl erfolgt durch die Auswahlleitung SPECIAL READ, die nicht dargestellten Adressendecodern nachgeordnet ist.this is illustrated by the coupling stage for reading the ECC bit positions and additional status bits (Fig. 2). The selection is made by the selection line SPECIAL READ, which is arranged downstream of address decoders, not shown.

Fig. 15 zeigt wesentliche Detailsaus den allgemeinen Steuerschaltungen. Alle Zugriffssteuerleitungen sind einem Register 32 nachgeschaltet, dem eine relativ komplexe Decodierschaltung vorgeordnet ist (diese kann aus der Beschreibung der unterschiedlichen Zugriffsmöglichkeiten in Anlehnung an ΠΙ, 181 unproblematisch angegeben werden, z. B. in Form Boolescher Gleichungen, die die Belegung von ROM- oder PLA-Schaltkreisen bestimmen).Fig. 15 shows essential details of the general control circuits. All access control lines are connected downstream of a register 32, which is preceded by a relatively complex decoding circuit (this can be stated without problems from the description of the different access possibilities in accordance with ΠΙ, 181 , eg in the form of Boolean equations covering the allocation of ROM or Determine PLA circuits).

Schreib- und Ladeimpulse für Speicher oder Register werden grundsätzlich durch konjunktive Verknüpfungen von Ausgängen des Registers 32 mit Impulsen abgeleitet, die über das Schieberegister 26 in Verknüpfung mit dem Endeflipflop 27 gebildet werden. In Fig. 15 ist dies anhand einer solchen Impulsleitung (PULSE) dargestellt, die zusätzlich konjunktv (39) mit einer disjunktiven Verknüpfung 36 des Gültigkeitsflipflop 22 mit der invertierten zusätzlichen Position des Zyklusregisters 25 (LOOKAHEAD CYCLE) beschaltet ist. Damit wird die bereits weiter oben beschriebene Wirkung erzielt:Write and load pulses for memory or register are derived in principle by conjunctive connections of outputs of the register 32 with pulses, which are formed via the shift register 26 in conjunction with the Endeflipflop 27. In FIG. 15 this is illustrated by means of such a pulse line (PULSE), which in addition is connected conjunctv (39) with a disjunctive link 36 of the validity flip-flop 22 with the inverted additional position of the cycle register 25 (LOOKAHEAD CYCLE). This achieves the effect already described above:

Impulse werden nur außerhalb von LOOKAHEAD-Zyklen abgegeben oder nur dann, wenn der vorbeugend gestartete Zyklus tatsächlich die betreffenden Speichermittel adressiert.Pulses are delivered only outside LOOKAHEAD cycles, or only when the preventively initiated cycle actually addresses the storage means concerned.

Dazu wird weiterhin die Tatsache ausgenutzt, daß bei Erregung der Steuerleitung P3 (Laden des Registers 32) die Adresse der CPU 1 garantiert gültig ist (mit entsprechender Voreilung zum Durchlaufen der Decodierschaltungen), so daß zu diesem Zeitpunkt die Art des Zugriffs eindeutig feststeht (vgl. Fig. 10). Der Vorteil der Erfindung besteht darin, daß für Mikrorechner, die in Multimikrorechneranordnungen eingesetzt werden und vorwiegend mit dynamischen RAMs für interne und externe Zugriffe (dual port access) ausgerüstet sind, ein Betrieb unter weitgehender Vermeidung von Wartezuständen möglich ist, auch wenn die CPU dafür nicht speziell ausgebildet ist.For this purpose, the fact is further exploited that when energized the control line P3 (loading of the register 32), the address of the CPU 1 is guaranteed valid (with appropriate lead for passing through the decoding), so that at this time the type of access is clearly established (see Fig. 10). The advantage of the invention is that microcomputers, which are used in multi-microcomputer arrangements and are predominantly equipped with dynamic RAMs for internal and external accesses (dual port access), enable operation while largely avoiding wait states, even if the CPU does not is specially designed.

Claims (4)

1. Mikrorechneranordnung zum Einsatz in Multimikrorechnersystem, wobei die vorzugsweise mit dynamischen RAMs ausgerüsteten Speichermittel sowohl seitens der internen CPU als auch seitens eines gemeinsamen Zeitmultiplexbus (Systembus) zugänglich sind und deren Steuerschaltungen dazu mit Vermittlungs- und Ablaufsteuereinrichtungen ausgestattet sind, dadurch gekennzeichnet, daß die Adresseneingänge der betreffenden Speichermittel (4) direkt einer ersten Auswahlschaltung (7) nachgeordnet sind, daß diese einerseits.direkt an niederwertige Adressenleitungen der CPU (1) und andererseits an eine zweite Auswahlschaltung (8) angeschlossen ist, die ihrerseits wiederum mit allen zur Adressierung der Speichermittel (4) erforderlichen Adressenleitungen beschaltet ist, daß die an sich vorhandenen Steuerschaltungen (18) so ausgebildet sind, daß die an sich vorhandenen Anforderungs- und Zyklusregister (23,25) mit zwischengeschaltetem Prioritätsnetzwerk (24) um jeweils eine Position erweitert sind, wobei das Prioritätsnetzwerk (24) so ausgebildet ist, daß diese Postition die niedrigste Priorität hat, daß der besagten zusätzlichen Position des Anforderungsregisters (23) eine NOR-Verknüpfung (33) aller Anforderungsleitungen der CPU (1) vorgeschaltet ist, daß ein Gültigkeitsflipflop (22) vorgesehen ist, dem die Ausgänge der an sich vorhandenen Warteflipflops (19, 20) für interne Zugriffe in disjunktiver Verknüpfung vorgeschaltet sind, daß dieses Gültigkeitsflipflop (22) wiederum in disjunktiver Verknüpfung mit den an sich vorgesehenen Rücksetzleitungen auf die Rücksetzeingänge der besagten Warteflipflops (19,20) zurückgeführt ist, daß das Gültigkeitsflipflop (22) mit der der besagten zusätzlichen Position des Zyklusregisters (22) nachgeschalteten Zyklussteuerleitung (LOOKAHEAD CYCLE) sowie zusammen mit dem Anforderungsregister (23) mit einer zum Takteingang der CPU (1) synchron erregten Taktleitung (CPU CLOCK) beschaltet ist, daß in die Verbindungen an sich vorgesehener Zugriffserlaubnisleitungen mit an sich vorgesehenen konjunktiveen Verknüpfungen (34), denen die Steuerleitungen (RAS, CAS) der betreffenden Speichermittel (4) nachgeschaltet sind, disjunktive Verknüpfungen (35) mit der besagten zusätzlichen Position des Zyklusregisters (25) eingefügt sind und daß die an sich vorgesehenen Schreib-, Ladeimpuls- und Aufschalterlaubnisleitungen in konjunktiven Verknüpfungen mit einer disjunktiven Verknüpfung (36) des Gültigkeitsflipflop (22) mit der invertierten besagten zusätzlichen Position des Zyklusregisters (25) beschaltet sind.A microcomputer arrangement for use in a multi-core computer system, wherein the memory means, preferably equipped with dynamic RAMs, are accessible both from the internal CPU and from a shared time-multiplexed bus (system bus) and the control circuits thereof are provided with switching and flow control devices, characterized in that the address inputs the relevant storage means (4) are arranged directly downstream of a first selection circuit (7), on the one hand, directly connected to low-order address lines of the CPU (1) and, on the other hand, to a second selection circuit (8) which, in turn, is connected to all of them for addressing the storage means (4) required address lines is connected, that the intrinsic control circuits (18) are formed so that the existing itself request and cycle registers (23,25) with intervening priority network (24) by one position extended si nd, wherein the priority network (24) is formed so that this postition has the lowest priority that the said additional position of the request register (23) is preceded by a NOR operation (33) of all request lines of the CPU (1) that a valid flip-flop (22) is provided, preceded by the outputs of the inherent waiting flip-flops (19, 20) for internal access in disjunctive link, that this validity flip-flop (22) in turn in disjunctive connection with the per se provided reset lines to the reset inputs of said Warteflipflops (19, 20), the valid flip-flop (22) is synchronized with the cycle control line (LOOKAHEAD CYCLE) connected to said additional position of the cycle register (22) and synchronously with the request register (23) with a clock input to the CPU (1) Clock line (CPU CLOCK) is wired, that in the connections to sic h provided access permission lines with per se provided conjunctive links (34) to which the control lines (RAS, CAS) of the respective storage means (4) are connected, disjunctive links (35) are inserted with said additional position of the cycle register (25) and that the write, load pulse and enable enable lines in conjunctive connections to a disjunctive link (36) of the valid flip-flop (22) are connected to the inverted said additional position of the cycle register (25). 2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Ablaufsteuerung im Rahmen der Steuerschaltungen (18) so ausgebildet ist, daß einem an sich vorgesehenen Schieberegister (26) eine Auswahlschaltung (28) nachgeordnet ist,.die einerseits mit zeitlich früher und andererseits mit zeitlich später erregten Ausgängen des Schieberegisters (26) beschaltet ist, daß dieser Auswahlschaltung (28) die Steuerleitungen (RAS, CAS, SWITCH ADRS) der Speichermittel (4) sowie das an sich vorhandene Endeflipflop (27) nachgeschaltet sind und daß der Auswahleingang der Auswahlschaltung (28) einem Flipflop (29) nachgeordnet ist, das einerseits mit dem Ausgang der zusätzlichen Position (LOOKAHEAD CYCLE) des Zyklusregisters (25) und andererseits mit dem Endeflipflop (27) beschaltet ist.2. Arrangement according to claim 1, characterized in that the sequence control in the context of the control circuits (18) is designed so that a per se provided shift register (26) a selection circuit (28) is arranged downstream, .the one with earlier in time and on the other hand with connected laterally energized outputs of the shift register (26) that this selection circuit (28), the control lines (RAS, CAS, SWITCH ADRS) of the memory means (4) and the self-existing Endeflipflop (27) are connected downstream and that the selection input of the selection circuit (28) is followed by a flip-flop (29) which is connected on the one hand to the output of the additional position (LOOKAHEAD CYCLE) of the cycle register (25) and on the other hand to the Endeflipflop (27). 3. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß in die Verbindung zwischen der NOR-Verknüpfung (33) aller Anforderungsleitungen der CPU (1) und der zusätzlichen Position des Anforderungsregisters (23) eine konjunktive Verknüpfung (37) mit einer Erlaubnisleitung eingefügt ist, die an programmtechnisch stellbare Schaltmittel der Mikrorechneranordnung angeschlossen ist. 3. Arrangement according to claim 1, characterized in that in the connection between the NOR operation (33) of all request lines of the CPU (1) and the additional position of the request register (23) is inserted a conjunctive link (37) with a permission line, which is connected to programmable adjustable switching means of the microcomputer arrangement. 4. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß dem Auswahleingang der ersten Auswahlschaltung (7) vor den Adresseneingängen der Speichermittel (4) eine disjunktive Verknüpfung (40) aller Positionen des Zyklusregisters (25) mit Ausnahme der zusätzlich eingeführten sowie der Adressenumschaltleitung (SWITCH ADRS) der Speichermittel (4) vorgeschaltet ist.4. Arrangement according to claim 1, characterized in that the selection input of the first selection circuit (7) before the address inputs of the memory means (4) a disjunctive link (40) of all positions of the cycle register (25) with the exception of the additionally introduced and the address switching line (SWITCH ADRS) of the storage means (4) is connected upstream. Hierzu 15 Seiten ZeichnungenFor this 15 pages drawings
DD29683486A 1986-12-01 1986-12-01 MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN DD254077A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DD29683486A DD254077A1 (en) 1986-12-01 1986-12-01 MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DD29683486A DD254077A1 (en) 1986-12-01 1986-12-01 MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN

Publications (1)

Publication Number Publication Date
DD254077A1 true DD254077A1 (en) 1988-02-10

Family

ID=5584317

Family Applications (1)

Application Number Title Priority Date Filing Date
DD29683486A DD254077A1 (en) 1986-12-01 1986-12-01 MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN

Country Status (1)

Country Link
DD (1) DD254077A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0397180A2 (en) * 1989-05-10 1990-11-14 Mitsubishi Denki Kabushiki Kaisha Multiprocessor type time varying image encoding system and image processor

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0397180A2 (en) * 1989-05-10 1990-11-14 Mitsubishi Denki Kabushiki Kaisha Multiprocessor type time varying image encoding system and image processor
EP0397180A3 (en) * 1989-05-10 1993-05-05 Mitsubishi Denki Kabushiki Kaisha Multiprocessor type time varying image encoding system and image processor

Similar Documents

Publication Publication Date Title
EP0013737B1 (en) Multilevel storage hierarchy for a data processing system
DE3146356C2 (en) Device for controlling the transmission of device control information in a data terminal
DE3914265C2 (en)
DE2953861C2 (en)
DE102013113262B4 (en) trigger routing unit
DE2117936A1 (en) Microprogram-controlled central unit of an electronic data processing system
CH619309A5 (en)
DE19807872A1 (en) Method of managing configuration data in data flow processors
EP1812861A1 (en) Method and device for delaying accesses to data and/or commands of a multiprocessor system
WO2005073865A2 (en) Device for transmitting data between memories
CH626735A5 (en)
DE2611975A1 (en) IT SYSTEM WITH A DEVICE FOR THE ASSIGNMENT OF PROCESSES TO A PROCESSOR ON A PRIORITY BASIS
DE1935944B2 (en) Control device in an electronic data processing system
DE3814875A1 (en) LOGICAL LINKING DEVICE AND LOGIC LINKING METHOD
DE4227784A1 (en) COMPUTER SYSTEM AND METHOD FOR REMOVING A PAGE ERROR
DD254077A1 (en) MICRORECHNER ARRANGEMENT FOR USE IN MULTIMIKRORECHNERSYSTEMEN
EP1308846B1 (en) Data Transfer Device
DE3200042C2 (en)
DE2106731A1 (en) Diagnostic equipment for electronic data processing systems
DE4019546C2 (en)
EP0280767A2 (en) Data transmission method
DE3603320C2 (en)
EP0067982A2 (en) Microprocessor configuration, preferably for the application in multimicroprocessor systems
CH672853A5 (en)
AT389771B (en) A UNIT-BASED DATA PROCESSING SYSTEM

Legal Events

Date Code Title Description
ENJ Ceased due to non-payment of renewal fee