DD233435A1 - MEMORY ARRANGEMENT WITH INPUT / OUTPUT CONNECTION, PREFERABLY FOR USE IN MULTIMIKRORECHNERSYSTEMEN - Google Patents
MEMORY ARRANGEMENT WITH INPUT / OUTPUT CONNECTION, PREFERABLY FOR USE IN MULTIMIKRORECHNERSYSTEMEN Download PDFInfo
- Publication number
- DD233435A1 DD233435A1 DD27202184A DD27202184A DD233435A1 DD 233435 A1 DD233435 A1 DD 233435A1 DD 27202184 A DD27202184 A DD 27202184A DD 27202184 A DD27202184 A DD 27202184A DD 233435 A1 DD233435 A1 DD 233435A1
- Authority
- DD
- German Democratic Republic
- Prior art keywords
- lines
- input
- address
- cpu
- control
- Prior art date
Links
Landscapes
- Microcomputers (AREA)
Abstract
Die Erfindung betrifft eine Speicheranordnung mit Eingabe-Ausgabeanschluss, vorzugsweise fuer Multimikrorechnersysteme zum Anschluss an ein externes Bussystem. Sie besitzt einen ROM, einen statischen und einen dynamischen RAM mit einer Refreshadressenquelle. Ferner ist ein Eingabe-Ausgabeanschluss vorhanden, der mit dem internen Bussystem verbunden ist. Die Erfindung loest die Aufgabe, flexible Steuerungs- und Adressierungsmoeglichkeiten und ungehinderte Zugriffsmoeglichkeiten zu bieten. Fuer den Eingabe-Ausgabeanschluss soll eine hohe Datenrate gewaehrleistet sein. Die Loesung besteht im wesentlichen darin, dass als Refreshadressenquelle eine Mikroprozessor-CPU vorhanden ist, die es neben dem Auffrischen des RAM gestattet, unterschiedliche Pruefungen des RAM-Inhalts und interne Tests durchzufuehren. Durch einen besonderen DMA-Modus ist der direkte Datenaustausch zwischen Speicher und Interface moeglich. Alle Speichermittel sowie das externe Interface koennen sowohl von der internen CPU als auch ueber den externen Bus benutzt bzw. betrieben werden. Fig. 2The invention relates to a memory arrangement with input-output connection, preferably for multi-microcomputer systems for connection to an external bus system. It has a ROM, a static and a dynamic RAM with a refresh address source. Further, there is an input-output terminal connected to the internal bus system. The invention solves the task of providing flexible control and addressing facilities and unobstructed accessibility. For the input-output connection a high data rate should be guaranteed. Essentially, the solution is that there is a microprocessor CPU as the refresh address source, which, in addition to refreshing the RAM, allows different checks of RAM content and internal testing to be performed. Due to a special DMA mode the direct data exchange between memory and interface is possible. All storage devices as well as the external interface can be used or operated both by the internal CPU and via the external bus. Fig. 2
Description
Die Erfindung betrifft eine Speicheranordnung mit Eingabe-Ausgabeanschluß, die vorzugsweise zum Einsatz in Multimikrorechnersystemen vorgesehen ist.The invention relates to a memory arrangement with input-output connection, which is preferably provided for use in multi-cardiac computer systems.
Dabei soll die Speicheranordnung durch Anschluß an ein entsprechendes Bussystem von Mikrorechnern aus adressierbar sein.In this case, the memory arrangement should be addressable by connection to a corresponding bus system of microcomputers.
Weiterhin soll ein Eingabe-Ausgabeanschluß vorgesehen sein, der vorzugsweise byteparallel (bzw. der Verarbeitungsbreite der eingesetzten Mikrorechner entsprechend) organisiert sein soll. Dabei soll eine hohe Geschwindigkeit des Datenaustausches mit der Speicheranordnung und eine flexible Steuerung dieses Datenaustausches möglich sein, und es soll zusätzlich möglich sein, den Eingabe-Ausgabeanschluß vom Multimikrorechnersystem aus direkt zu steuern.Furthermore, an input-output connection should be provided, which should preferably be organized in parallel with the byte (or the processing width of the microcomputer used accordingly). In this case, a high speed of data exchange with the memory array and a flexible control of this data exchange should be possible, and it should additionally be possible to directly control the input-output connection from the multi-microcomputer system.
Die Speicheranordnung selbst ist mit verschiedenen Speicherschaltkreisen bestückt. Es ist ein ROM-Teil, ein statischer RAM-Teil und ein dynamischer RAM-Teil vorgesehen.The memory device itself is equipped with various memory circuits. It is a ROM part, a static RAM part and a dynamic RAM part provided.
Ein charakteristischer Einsatzfall ist bei einem Bedien- und Serviceprozessor gegeben, der ein spezielles Interface zu der zu bedienenden Einrichtung (etwa zu einer EDV-Zentraleinheit) ansteuern und eine relativ große Speicherkapazität zur Implementierung einer Vielzahl von Diagnosefun^'inen, Wartungsvorkehrungen usw. aufweisen soll.A typical use case is given by an operator and service processor which is to control a special interface to the device to be operated (such as a computerized central processing unit) and to have a relatively large memory capacity for implementing a variety of diagnostic functions, maintenance arrangements, etc. ,
Es ist allgemein bekannt, an Mikrorechneranordnungen über ein Bussystem Speicheranordnungen und Eingabe-Ausgabesteuerschaltungen anzuschließen. Dafür geeignete Leiterplattensysteme werden seit längerer Zeit von verschiedenen Herstellern angeboten. Es ist dabei möglich, die gesamte Speicherkapazität gemischt aus ROM-, statischen RAM- und dynamischen RAM-Schaltkreisen aufzubauen. Dazu existiert eine recht umfangreiche Literatur, so beispielsweise das Buch von Kieser/Meder: Mikroprozessortechnik, Verlag Technik Berlin, 1982, und eine Vielzahl von Handbüchern der einschlägigen Hersteller.It is well known to connect memory arrays and input-output control circuits to microcomputer arrays via a bus system. For this purpose, suitable printed circuit board systems have long been offered by various manufacturers. It is possible to build up the entire memory capacity mixed from ROM, static RAM and dynamic RAM circuits. For this purpose, there is a rather extensive literature, such as the book by Kieser / Meder: microprocessor technology, Verlag Technik Berlin, 1982, and a variety of manuals of relevant manufacturers.
Bei Anordnungen aus dynamischen RAM-Schaltkreisen besteht das Problem des Auffrischens (refresh) des Speichennhaltes. Manche Mikroprozessorschaltkreise liefern dafür spezielle Refreshadressen mit den zugehörigen Steuersignalen. Diese Möglichkeit ist allerdings nur н-rin nutzbar, wenn der Mikroprozessor nicht durch externe Bedingungen in einem Wartezustand gehalten wird (da dann die Refreshzyklen zeitlich intolerabel verzögert werden könnten).In dynamic RAM circuit arrays, there is the problem of refreshing the memory content. Some microprocessor circuits supply special refresh addresses with the associated control signals. However, this option can only be used if the microprocessor is not kept in a wait state by external conditions (since then the refresh cycles could be delayed in an intolerable way).
Gerade in Multimikrorechnersystemen, in denen mehrere Mikrorechner an ein gemeinsames „Multi Master"-Bussystem angeschlossen sind, muß mit derartigen Wartezuständen stets gerechnet werden, so daß spezielle Hardware für das Auffrischen unumgänglich wird. Dazu muß den RAMs eine Adressenauswahlschaltung und eine Refreshadressenquelle vorgeordnetEspecially in multi-microcomputer systems in which several microcomputers are connected to a common "multi-master" bus system, such wait states must always be expected, so that special hardware for refreshing becomes unavoidable
-2- 720 21-2- 720 21
Übliche Eingabe-Ausgabeanschlußsteuerungen werden direkt von einem Mikrorechner gesteuert. Dadurch ist eine hohe Flexibilität gegeben, die Datenrate ist aber durch die Verarbeitungsgeschwindigkeit des Mikrorechners beschränkt. Weiterhin sind DMA-(direct memory access)Schaltungen bekannt, die einen direkten Datentransport zwischen Eingabe-Ausgabeanschluß und Speicher ermöglichen. Es handelt sich allerdings lediglich um einen blockweisen Informationsaustausch.Common input-output port controls are controlled directly by a microcomputer. This provides high flexibility, but the data rate is limited by the processing speed of the microcomputer. Furthermore, DMA (direct memory access) circuits are known, which allow direct data transport between the input-output port and memory. However, this is only a block-wise exchange of information.
Es ist weiterhin bekannt, für den direkten Datentransport einen zweiten Mikroprozessor einzusetzen. Dieser benutzt das Bussystem des ersten Mikroprozessors, so daß dieser für die Zeit der Datenübertragung keine Verarbeitungsaufgaben ausführen капп.It is also known to use a second microprocessor for direct data transport. This uses the bus system of the first microprocessor so that it does not perform any processing tasks for the time of data transmission капп.
Eine derartige Umschaltung des Bussystems ist in Multimikrorechnersystemen der genannten Struktur kaum durchführbar. Damit besteht die Notwendigkeit, einen relativ hohen Aufwand in Gestalt spezieller Hardware zur Eingabe-Ausgabesteuerung und zum Auffrischen der dynamischen RAMs einzusetzen.Such a switching of the bus system is hardly feasible in multi-microcomputer systems of said structure. Thus, there is a need to put a relatively high effort in the form of special hardware for input-output control and to refresh the dynamic RAMs.
Das Ziel der Erfindung besteht darin, bei einer Speicheranordnung, die aus ROM-, statischem RAM- und dynamischen RAM-Schaltkreisen besteht, im Zusammenhang mit einem Eingabe-Ausgabeanschluß den Aufwand an Mitteln für die Steuerung und Adressierung zu verringern und das Leistungsvermögen zu erhöhen.The object of the invention is, in a memory arrangement consisting of ROM, static RAM and dynamic RAM circuits, in connection with an input-output connection to reduce the cost of means for control and addressing and to increase the performance.
Die Aufgabe der Erfindung besteht darin, Schaltmittel für die Kopplung einer aus ROM-, statischen RAM- und dynamischen RAM-Schaltkreisen bestehenden Speicheranordnung mit dem Systembus eines Multimikrorechnersystems und mit einem Eingabe-Ausgabeanschluß anzugeben, die bei vergleichweise geringem Aufwand flexible Steuerungs- und Adressierungsmöglichkeiten bieten und eine hohe Datenrate bei ungehinderten Zugriffsmöglichkeiten gewährleisten. Die Mängel der bekannten Lösungen haben ihre Ursache darin, daß bei überwiegendem Einsatz mikrorechnerspezifischer Schaltkreise entweder Leistungsvermögen oder Flexibilität nicht erreicht werden können, so daß für die gewünschte Kombination von Anwendungseigenschaften relativ hohe Hardwareaufwendungen erforderlich werden. Erfindungsgemäß wird die Aufgabe dadurch gelöst, daß die Refreshadressenquelle als Mikroprozessor-CPU ausgebildet ist, der über Auswahlschaltungen die internen Adressen- und Datenbusleitungen nachgeordnet sind, daß dem statischen RAM-Teil eine Auswahlschaltung vorgeschaltet ist, die sowohl mit den niedrigstwertigen als auch mit den höchstwertigen der Adressenbusleitungen verbunden ist, daß dessen Ausgänge teilweise mit einer Auswahlschaltung, die dem dynamischen RAM-Teil vorgeordnet und andererseits mit Teilen der Adressenbusleitungen verbunden ist, mit einem Register, dem Modusleitungen des Eingabe-Ausgabeanschlusses nachgeordnet sind, Steuerschaltungen sowie mit einer an die Datenbusleitungen angeschlossenen Auswahlschaltung verbunden sind, wobei deren Auswahleingang mit der niedrigstwertigen der Adressenbusleitungen verbunden ist, daß den Datenbusleitungen ein CPU-Leseregister und ein Bus-Leseregister nachgeordnet sind, wobei die Register ausgangsseitig an die Datenbusleitungen der CPU bzw. des externen Bussystems angeschlossen sind und daß sowohl die CPU als auch das externe Bussystem über jeweils eine Steuerschaltung und eine Vermittlungsschaltung an eine Ablaufsteuerung angeschlossen sind.The object of the invention is to provide switching means for coupling a memory array consisting of ROM, static RAM and dynamic RAM circuits to the system bus of a multi-core computer system and having an input-output terminal which provides flexible control and addressing capabilities with comparatively little effort and ensure a high data rate with unrestricted access. The shortcomings of the known solutions are due to the fact that when predominantly micro-computer-specific circuits are used, either performance or flexibility can not be achieved, so that relatively high hardware expenditures are required for the desired combination of application properties. According to the invention the object is achieved in that the Refreshadressenquelle is designed as a microprocessor CPU, which are arranged downstream of selection circuits, the internal address and Datenbusleitungen that the static RAM part is preceded by a selection circuit, both with the least significant and the most significant the address bus lines are connected, the outputs of which are partially connected to a selection circuit upstream of the dynamic RAM part and on the other hand connected to parts of the address bus lines, with a register, the mode lines of the input-output terminal, control circuits and with a connected to the data bus lines Selection circuit are connected, wherein the selection input is connected to the least significant of the address bus, that the Datenbusleitungen a CPU read register and a bus read register are arranged downstream, the registers on the output side to the Datenbusleit ments of the CPU or the external bus system are connected and that both the CPU and the external bus system via a control circuit and a switching circuit are connected to a flow control.
Eine Weiterbildung der Erfindung besteht darin, daß eines der weiteren Eingaberegister als Inspektionsregister ausgebildet ist, dessen Eingänge mit Fehlerleitungen, Zustandssignalleitungen sowie den Ausgängen zusätzlicher Bitpositionen des dynamischen RAM-Teils beschältet sind und daß dessen Takteingang eine disjunktive Verknüpfung eines Ausgangssignals des statischen RAM-Teils mit der konjunktiven Verknüpfung einer Fehler- und einer Erlaubnisleitung bei weiterer konjunktiver Verknüpfung aller besagten Leitungen mit einer Taktimpulsleitung vorgeordnet ist.A further development of the invention consists in that one of the further input registers is designed as an inspection register whose inputs are connected to error lines, state signal lines and the outputs of additional bit positions of the dynamic RAM part and whose clock input has a disjunctive combination of an output signal of the static RAM part the conjunctive connection of an error and a permission line is preceded by a further conjunctive connection of all said lines with a clock pulse line.
Die Erfindung ist ferner dadurch gekennzeichnet, daß die Ablaufsteuerung als rückgekoppeltes Schieberegister ausgeführt ist, dessen letzte Position mit einer disjunktiven Verknüpfung konjunktiver Verknüpfungen einzelner seiner anderen Ausgangsleitungen mit Zugriffssteuerleitungen einiger der Speicherteile beschaltet ist.The invention is further characterized in that the sequence control is implemented as a feedback shift register whose last position is connected to a disjunctive combination of conjunctive links of individual of its other output lines with access control lines of some of the memory parts.
Die Steuerschaltungen für die Anforderungen des externen Bussystems bzw. der CPU sind so ausgebildet, daß die Aufschalterlaubnisleitung für das jeweilige Leseregister jeweils einer konjunktiven Verknüpfung der betreffenden Lesesteuerleitung und der jeweiligen Anforderungsleitung nachgeschaltet ist und daß das jeweilige Flipflop, an das die Rückmeldeleitungen angeschlossen sind, mit einer konjunktiven Verknüpfung der Ausgangsleitung der letzten Position der Ablaufsteuerung und der jeweiligen Zyklusleitung der Vermittlungsschaltung beschaltet ist.The control circuits for the requirements of the external bus system or the CPU are designed so that the Aufschaltlaubnisleitung for the respective read register each of a conjunctive link of the respective read control line and the respective request line is connected downstream and that the respective flip-flop, to which the feedback lines are connected with a conjunctive connection of the output line of the last position of the sequence control and the respective cycle line of the switching circuit is connected.
Die Steuerschaltungen des Eingabe-Ausgabeanschlusses sind so ausgebildet, daß einem Flipflop, dem eine Strobeleitung als Teil der Steuerleitungen des Eingabe-Ausgabeanschlusses nachgeschaltet ist, ein Flipflop vorgeordnet ist, dessen Setzeingang mit der konjunktiven Verknüpfung der besagten Strobeleitung mit einem weiteren Flipflop beschaltet ist, das seinerseits mit einer Vergleichsstopleitung aus dem dynamischen RAM-Teil beschaltet ist.The control circuits of the input-output terminal are formed so that a flip-flop, which is connected downstream of a Strobeleitung as part of the control lines of the input-output terminal, a flip-flop whose set input is connected to the conjunctive linkage of said strobe line to another flip-flop, the in turn connected to a comparison stop line from the dynamic RAM part.
Im folgenden Ausführungsbeispiel zeigen:In the following embodiment show:
Fin. 1: das Blocksch„ .1^iId einer Speicheranordnung zum Anschluß an Mikrorechnersysteme,Fin. 1: the blocksch ". 1 ^ iId a memory device for connection to microcomputer systems,
Fig. 2: das Blockschaltbild der erfindungsgemäßen Anordnung,2 shows the block diagram of the arrangement according to the invention,
Fig. 3: die Struktur des statischen RAM-Teils,3 shows the structure of the static RAM part,
Fig. 4: Details der Adressenbildung,4: Details of the address formation,
Fig. 5: die Interpretation der Busadresse,5 shows the interpretation of the bus address,
Fig. 6: die Interpretation der CPU-Adresse,6 shows the interpretation of the CPU address,
Fig. 7: die Belegung eines Segmentregisters,7: the assignment of a segment register,
Fig. 3: den jeweiligen Datenfluß bei verschiedenen Zugriffen zum externen Interface,3 shows the respective data flow for various accesses to the external interface,
Fig. 9: die Aufschaltung von Information auf den internen Datenbus,9 shows the connection of information to the internal data bus,
Fig. 10: die Fehlersignalisierungsschaltungen,10 shows the error signaling circuits,
Fig. 11: die Ablaufsteuerschaltung,11: the sequence control circuit,
Fig. 12: das zugehörige Taktdiagramm,12: the associated timing diagram,
Fig. 13: die Vermittlungsschaltung,13 shows the switching circuit,
Fig. 14: die Steuerschaltung für CPU-Zugriffe,14 shows the control circuit for CPU accesses,
Fig. 15: das zugehörige Taktdiagramm,15: the associated timing diagram,
Fig. 16: die Steuerschaltung für Buszugriffe,16: the control circuit for bus accesses,
Fig. 17: daszugehörige Taktdiagramm,17: the associated timing diagram,
Fig. 18, 19 die Bildung interner Steuersignale,18, 19 the formation of internal control signals,
Fig. 20: die Bildung eines Strobe-Signals,20 shows the formation of a strobe signal,
Fig. 21: den Einsatz der Anordnung im Rahmen eines Multimikrorechnersystems.Fig. 21: the use of the arrangement in the context of a multi-microcomputer system.
Fig. 1 zeigt eine übliche Speicheranordnung, die aus einem ROM-Teil 1, einem statischen RAM-Teil 2 und einem dynamischen RAM-Teil 3 besteht, wobei alle Speicheranordnungen an einen internen Adressenbus 4 und an einen internen bidirektionalen Datenbus 5 angeschlossen sind. Für das Auffrischen des dynamischen RAM-Teils 3 ist eine Refreshadressenquelle 6 vorgesehen, die über eine Auswahlschaltung 7 mit den Adresseneingängen des dynamischen RAM-Teils 3 verbunden ist. Neben den Speicher-Teilen 1,2,3 sind ein- und auswärtsführende Interfaceleitungen 8,9 sowie weitere Eingaberegistere 10 und Ausgaberegister 11 an den Datenbus 5 angeschlossen. Der Eingabe-Ausgabeanschluß soll im folgenden als externes Interface bezeichnet werden. Die Register 10,11 dienen zum Einstellen besonderer Zustände, zur Abfrage von Fehlersignalen usw. Ein typischer Einsatzfall derartiger Register ist gegeben, wenn einige der Speicher-Teile 1,2,3 mit einer Kontrollschaltung versehen sind, die alternativ zur Paritätskontrolle bzw. zum Adressenvergleichsstop verwendbar ist, wie dies im DD-WP 154244 „Speicheranordnung mitFehlererkennungs-und Diagnoseeigenschaften, vorzugsweise für Mikrorechner" beschrieben ist.Fig. 1 shows a conventional memory device consisting of a ROM part 1, a static RAM part 2 and a dynamic RAM part 3, wherein all the memory devices are connected to an internal address bus 4 and to an internal bidirectional data bus 5. For the refreshing of the dynamic RAM part 3, a refresh address source 6 is provided, which is connected via a selection circuit 7 to the address inputs of the dynamic RAM part 3. In addition to the memory parts 1, 2, 3, incoming and outgoing interface lines 8, 9 and further input registers 10 and output registers 11 are connected to the data bus 5. The input-output connection will be referred to as an external interface in the following. The registers 10, 11 serve to set special states, to interrogate error signals, etc. A typical application of such registers is given when some of the memory parts 1, 2, 3 are provided with a control circuit which is alternative to parity control or address comparison stop is usable, as described in DD-WP 154244 "memory arrangement with error detection and diagnostic properties, preferably for microcomputer" is described.
Die gesamte Anordnung wird im Rahmen eines Mikrorechnersystems betrieben und ist dazu an dessen Bussystem angeschlossen. Für die Steuerung des Busanschlusses ist eine Steuerschaltung 12 vorgesehen.The entire arrangement is operated in the context of a microcomputer system and is connected to its bus system. For the control of the bus connection, a control circuit 12 is provided.
Eine solche Anordnung läßt sich leicht aus industriell gefertigten Komponenten von Mikrorechnersystemen aufbauen. Nähere Einzelheiten für die Auslegung der Teilschaltungen sind in der Literatur zu finden, beispielsweise in Kieser/Meder:Such an arrangement is easily constructed from industrially manufactured components of microcomputer systems. Further details for the design of the subcircuits can be found in the literature, for example in Kieser / Meder:
Mikroprozessortechnik, Verlag Technik Berlin, 1982.Microprocessor technology, Verlag Technik Berlin, 1982.
Die Nachteile der Anordnung bestehen in folgendem:The disadvantages of the arrangement consist in the following:
• das externe Interface kann nur vom Mikrorechnersystem aus betrieben werden, damit hängt die Übertragungsrate bzw. Reaktionszeit von dessen Leistungsvermögen ab,• the external interface can only be operated by the microcomputer system, so that the transfer rate or reaction time depends on its performance,
• der Inhalt des dynamischen RAM-Teils 3 kann bestenfalls durch Benutzung geprüft werden (wenn z.B. eine . Paritätskontrollschaltung vorgesehen ist).The content of the dynamic RAM part 3 can at best be checked by use (if, for example, a parity check circuit is provided).
Bei Speichern, die aus RAM-Schaltkreisen größerer Kapazität (z.B. 64kBytes) auf gebaut sind, besteht jedoch eine gewisse Gefahr darin, daß zeitweilig einzelne Bitpositionen fehlerhaft werden. Andererseits sind Fehlerkorrekturschaltungen relativ aufwendig. Sie ermöglichen zumeist nur die Korrektur von Ein-Bit-Fehlem im jeweils aufgerufenen Datenwort und geben somit keinen Aufschluß über den Zustand des gesamten Speichers (etwa wieviele Bitpositionen ausgefallen sind, welche Bereiche besonders betriffen sind usw.).However, with memories built from larger-capacity RAM circuits (e.g., 64k bytes), there is some danger that individual bit positions will temporarily become corrupted. On the other hand, error correction circuits are relatively expensive. They usually only allow the correction of one-bit errors in the respectively called data word and thus provide no information about the state of the entire memory (about how many bit positions have failed, which areas are particularly affected, etc.).
Zur Vermeidung dieser Nachteile ist in der erfindungsgemäßen Anordnung gemäß Fig. 2 als Refreshadressenquelle ein Mikroprozessor-CPU-Schaltkreis 13 (im folgenden als CPU 13 bezeichnet) an die Auswahlschaltung 7 angeschlossen. Diese ist andererseits direkt mit den Adressenleitungen des externen Bussystems beschaltet, und der gesamte interne Adressenbus 4 ist der Auswahlschaltung 7 nachgeordnet.To avoid these disadvantages, a microprocessor CPU circuit 13 (hereinafter referred to as CPU 13) connected to the selection circuit 7 in the inventive arrangement of FIG. 2 as Refreshadressenquelle. On the other hand, it is connected directly to the address lines of the external bus system, and the entire internal address bus 4 is arranged downstream of the selection circuit 7.
Den Adresseneingängen des statischen RAM-Teils 2 ist eine Auswahlschaltung 14 vorgeordnet, an die sowohl die niedrigstwertigen als auch die höchstwertigen Adressensignale des internen Adressenbusses 4 angeschlossen sind. Die Datenausgänge des statischen RAM-Teils 2 sind über eine Auswahlschaltung 15, deren Selektionseingang mit der niedrigstwertigen Adressenleitung beschaltet ist, mit dem internen Datenbus 5 verbunden. Weiterhin ist ein Teil der Datenausgänge an eine Auswahlschaltung 16 und ein anderer Teil an Steuerschaltungen 17 des externen Interfaces angeschlossen.The address inputs of the static RAM part 2 is preceded by a selection circuit 14, to which both the least significant and the most significant address signals of the internal address bus 4 are connected. The data outputs of the static RAM part 2 are connected to the internal data bus 5 via a selection circuit 15 whose selection input is connected to the least significant address line. Furthermore, a part of the data outputs is connected to a selection circuit 16 and another part to control circuits 17 of the external interface.
Den Adresseneingängen des dynamischen RAM-Teils 3 ist eine Auswahlschaltung 18 vorgeordnet, um die zeitmultiplexe Adressenzuführung für die RAM-Schaltkreise zu gewährleisten. Diese ist an die Auswahlschaltung 16 angeschlossen, die ihrerseits neben den genannten Ausgangssignalen des statischen RAM-Teils 2 mit dem internen Adressenbus 4 beschaltet ist. Der interne Datenbus 5 ist einer Auswahlschaltung 19 nachgeordnet, an die die Datenleitungen des externen Bussystems und die der CPU 13 angeschlossen sind. Dem internen Datenbus 5 sind seinerseits ein CPU-Leseregister 20 und ein Busleseregister 21 nachgeschaltet, die ausgangsseitig mit den Datenleitungen der CPU 13 bzw. mit denen des externen Bussystems verbundenThe address inputs of the dynamic RAM part 3 are preceded by a selection circuit 18 in order to ensure the time-division-multiplexed address supply for the RAM circuits. This is connected to the selection circuit 16, which in turn is connected in addition to the aforementioned output signals of the static RAM part 2 with the internal address bus 4. The internal data bus 5 is arranged downstream of a selection circuit 19, to which the data lines of the external bus system and those of the CPU 13 are connected. The internal data bus 5, in turn, a CPU read register 20 and a bus read register 21 are connected downstream, the output side connected to the data lines of the CPU 13 and with those of the external bus system
sind. .. - "are. .. - "
Der ROM-Teil 1 ist über eine Pufferstufe 22 an den internen Datenbus 5 gekoppelt und der dynamische RAM-Teil 3 über ein Ausgangsregister 23.The ROM part 1 is coupled to the internal data bus 5 via a buffer stage 22 and the dynamic RAM part 3 via an output register 23.
Das externe Interface ist über eine Koppelschaltung 24 und über Register 25, 26 angeschlossen. Neben den einwärts- und auswärtsführenden Interfaceleitungen 8,9 umfaßt der externe Interfaceanschluß zusätzliche Modusleitungen 27, die an das Register 26 angeschlossen sind, das seinerseits mit Teilen der Ausgangsleitungen des statischen RAM-Teils 2 beschaltet ist, sowie Steuerleitungen 28, die den Steuerschaltungen 17 nachgeordnet sind.The external interface is connected via a coupling circuit 24 and via registers 25, 26. In addition to the inbound and outbound interface lines 8, 9, the external interface terminal includes additional mode lines 27 connected to the register 26, which in turn is connected to portions of the output lines of the static RAM section 2, and control lines 28 downstream of the control circuits 17 are.
Die Steuerschaltung 12 des Externbusanschlusses ist zusammen mit einer CPU-Steuerschaltung 29 an eine Vermittlungsschaltung 30 angeschlossen, der eine Ablaufsteuerung 31 nachgeschaltet ist, die die internen Steuersignale zum Betreiben der Anordnung liefert.The control circuit 12 of the external bus terminal is connected together with a CPU control circuit 29 to a switching circuit 30, which is followed by a sequencer 31, which supplies the internal control signals for operating the device.
Vor einer detaillierten Beschreibung seien einige technische Daten einer Ausführung genannt:Before a detailed description, some technical data of a design are mentioned:
Breite des Datenweges: 1 ByteWidth of the data path: 1 byte
Adresse des externen Bussystems: 20 BitsAddress of the external bus system: 20 bits
Kapazität des ROM-Teils 1: 16kBytesCapacity of the ROM part 1: 16kBytes
Kapazität des statischen RAM-Teils 2: 32 BytesCapacity of static RAM part 2: 32 bytes
Kapazität des dynamischen RAM-Teils 3: 128 kBytesDynamic RAM part capacity 3: 128 kbytes
Das externe Bussystem entspricht jenem, das in der Schrift DD-WP 156743 „Bussystem zur Verbindung von logischen Funktionsmoduln" dargestellt ist. Es kann aber auch ein anderes der vielen eingeführten Bussysteme benutzt werden, vorausgesetzt, es weist eine ausreichende Anzahl von Adressenleitungen auf (eine Übersicht über solche Bussysteme ist z. B. in dem Artikel von Conolly „Special Report: Buses form the backbone of computer systems" in Electronic Design, December 23, 1982, S. 117-132 gegeben).The external bus system corresponds to that shown in DD-WP 156743 "Bus system for connecting logic function modules." However, another of the many bus systems introduced may be used, provided that it has a sufficient number of address lines (one An overview of such bus systems is given, for example, in the article by Conolly "Special Report: Buses form the backbone of computer systems" in Electronic Design, December 23, 1982, pp. 117-132).
Wesentlich ist, daß die CPU 13 im Rahmen der Anordnung an sich beliebige Befehle und damit beliebige Zugriffe zu den Speichern und Registern ausführen kann. Allerdings ist die CPU 13 nicht dazu vorgesehen, beliebige Anwendungsprogramme abzuarbeiten. Sie ist vielmehr für folgende Aufgaben vorgesehen:It is essential that the CPU 13 in the context of the arrangement can execute arbitrary commands and thus any accesses to the memories and registers. However, the CPU 13 is not intended to handle any application programs. It is intended for the following tasks:
-4- 720 21-4- 720 21
1. Refreshen des dynamischen RAM-Teils 3 durch entsprechende zyklische Zugriffe1. Refresh the dynamic RAM part 3 by appropriate cyclic accesses
2. Kontrolle des Inhalts des dynamischen RAM-Teils 3 unabhängig von dessen aktueller Benutzung, etwa durch zyklisches Inspizieren aller Zellen auf korrekte Parität, durch Bildung und Kontrolle von Prüfsummen usw.2. Control the contents of the dynamic RAM part 3 regardless of its current usage, such as by cyclically inspecting all cells for correct parity, by building and checking checksums, etc.
3. Ausführung von Aufträgen zum Betrieb des externen Interfaces, z. B. blockweiser Datenaustausch zwischen Interface und den Speichermitteln, Interpretation der eingelesenen Datenblöcke usw.3. Execution of orders for the operation of the external interface, z. B. blockwise data exchange between interface and the storage means, interpretation of the read data blocks, etc.
4. Diagnose der gesamten Anordnung mittels Testprogrammen.4. Diagnosis of the entire arrangement by means of test programs.
Ein Problem beim Einsatz der kostengünstigen 8-Bit-CPUs besteht darin, daß diese nur eine 16-Bit-Adresse liefern, so daß es nicht möglich ist, alle Speichermittel direkt zu adressieren.A problem with using the low-cost 8-bit CPUs is that they provide only a 16-bit address, so that it is not possible to directly address all storage means.
Deshalb ist der statische RAM-Teil 2 so beschaltet und aufgebaut, daß er neben seiner Funktion als normaler RAM auch in der Lage ist, eine kürzere Adresse auf die gewünschte Länge zu ergänzen. Er ermöglicht somit den Zugriff zu allen Speichermitteln im Rahmen von Segmenten definierter Größe. Deshalb soll dieser Speicherteil im folgenden als Segment-RAM 2 bezeichnet werden.Therefore, the static RAM part 2 is wired and constructed so that, in addition to its function as normal RAM, it is also able to add a shorter address to the desired length. It thus allows access to all storage means in the context of segments of defined size. Therefore, this memory part will be hereinafter referred to as segment RAM 2.
Fig.3 zeigt die Ausgestaltung im einzelnen.3 shows the embodiment in detail.
Der Segment-RAM 2 ist aus zwei Speicheranordnungen zu 16 Bytes aufgebaut. Beim Betrieb als normaler RAM ist das Steuersignal SEGMENT RAM ACCESS aktiv und wählt über die Auswahlschaltung 14 die niederen vier Adressenbits (ADRS 4-1) aus. Das niedrigstwertige Adressenbit (ADRS 0) dient dazu, das Durchschalten des Schreibimpulses zu einem der beiden 16-Byte-RAMs sowie das Auswählen der Ausgänge beim Lesen (über die Auswahlschaltung 15) zu steuern. Damit entsprechen zwei aufeinanderfolgende Bytes einem 16-Bit-Wort, dessen Belegung in der Anordnung in paralleler Form zur Verfügung steht (Leitungen SEGMENT RAM 15-0). Zwei entsprechend aufeinanderfolgende Bytepositionen im Segment-RAM 2 werden im folgenden als Segmentregister bezeichnet. Der Segment-RAM 2 umfaßt aleo 32 Bytes bzw. 16 Segmentregister. Wird nicht direkt zum Segment-RAM 2 zugegriffen, so wählen vier höherwertige Adressenpositionen (ADRS 15-12) über die Auswahlschaltung 14 jeweils eines der 16 Segmentregister aus.The segment RAM 2 is composed of two 16-byte memory arrays. When operating as normal RAM, the control signal SEGMENT RAM ACCESS is active and selects via the selection circuit 14, the lower four address bits (ADRS 4-1). The least significant address bit (ADRS 0) serves to control the assertion of the write pulse to one of the two 16-byte RAMs as well as the selection of the outputs in reading (via the selection circuit 15). Thus, two consecutive bytes correspond to a 16-bit word whose occupancy in the array is available in parallel form (lines SEGMENT RAM 15-0). Two correspondingly successive byte positions in the segment RAM 2 are referred to below as segment registers. The segment RAM 2 comprises aleo 32 bytes or 16 segment registers. If the segment RAM 2 is not accessed directly, then four higher-order address positions (ADRS 15-12) select one of the 16 segment registers via the selection circuit 14.
Fig. 4 zeigt wettere Details der Adressenbildung.Fig. 4 shows weather details of address formation.
Die Auswahlschaltung 7 ist mit Multiplexer-Schaltkreisen realisiert, an die alle Adressenleitungen der CPU 13 und die 16 niedrigstwertigen Adressenleitungen des externen Bussystems angeschlossen sind.The selection circuit 7 is implemented with multiplexer circuits to which all the address lines of the CPU 13 and the 16 least significant address lines of the external bus system are connected.
Auf diese Weise werden die niedrigstwertigen 16 Adressensignale des internen Adressenbusses 4 gebildet.In this way, the least significant 16 address signals of the internal address bus 4 are formed.
Dem ROM-Teil 1 werden davon die niedrigstwertigen 14 Signale zugeführt, der Segment-RAM 2 ist gemäß Fig. 3 angeschlossen.The ROM part 1 thereof is supplied with the least significant 14 signals, the segment RAM 2 is connected as shown in FIG.
Dem dynamischen RAM-Teil 3 werden nur die niedrigstwertigen zwölf Signale direkt zugeführt. Die höchstwertigen vier Signale (HI ADRS 15-12) werden hingegen durch die Auswahlschaltung 16 gebildet. Bei direktem Zugriff werden dazu die bereits erwähnten Signale des internen Adressenbusses 4 (ADRS 15-12) durchgesteuert, bei segmentiertem Zugriff (SEGMENTED ACCESS) die vier niedrigstwertigen Ausgangssignale des Segment-RAM 2. Die Auswahlschaltung 18 vordem dynamischen RAM-Teil 3 ist somit mit den Adressenleitungen HI ADRS 15-12 und ADRS 11-0 beschaltet. Sie selbst ist lediglich dazu vorgesehen, den RAM-Schaltkreisen die 16-Bit-Adresse zeitmultiplex in zwei 8-Bit-Abschnitten zuzuführen. Da dies bei vielen Typen von Speicherschaltkreisen üblich ist, erübrigt sich eine genauere Beschreibung.The dynamic RAM part 3, only the least significant twelve signals are fed directly. The most significant four signals (HI ADRS 15-12), however, are formed by the selection circuit 16. In the case of direct access, the already mentioned signals of the internal address bus 4 (ADRS 15-12) are controlled through, with segmented access (SEGMENTED ACCESS) the four least significant output signals of the segment RAM 2. The selection circuit 18 before the dynamic RAM part 3 is therefore also the address lines HI ADRS 15-12 and ADRS 11-0 connected. It is merely intended to time-multiplex the 16-bit address into two 8-bit sections of the RAM circuits. Since this is common in many types of memory circuits, a more detailed description is unnecessary.
Die Selektion der einzelnen Speichermittel erfolgt durch später beschriebene Steuerschaltungen, die weitere Adressenleitungen bzw. Ausgangssignale des Segment-RAM 2 auswerten. Zunächst sollen jedoch die Prinzipien der Adressierung aus logischer Sicht beschrieben werden.The selection of the individual storage means takes place by control circuits described later, which evaluate further address lines or output signals of the segment RAM 2. First, however, the principles of addressing from a logical perspective will be described.
Dazu zeigt Fig.5 die Interpretation der 20-Bit-Busadresse„ wenn die Anordnung am externen Bussystem als Slave adressiert wird.FIG. 5 shows the interpretation of the 20-bit bus address "when the arrangement on the external bus system is addressed as a slave.
Diebeiden höchstwertigen Bits (19,18) identifizieren die Anordnung im Rahmen des Mikrorechnersystems. Diese Slave-Adresse ist durch Schalter, Drahtbrücken o.a. in der Hardware eingestellt. Ein Zugriff mit entsprechend gesetzten Adressenbits 19,18 wählt die Anordnung aus.The two most significant bits (19, 18) identify the arrangement within the microcomputer system. This slave address is by switches, jumper o.a. set in the hardware. An access with appropriately set address bits 19, 18 selects the arrangement.
Die nachfolgenden niederen Bits bestimmen die detaillierte Interpretation der Adresse:The following lower bits determine the detailed interpretation of the address:
a) Mit Bit 17 = 0 werden die niedrigstwertigen 17 Bitpositionen für den direkten Zugriff zu den 128 kBytes des dynamischen RAM-Teils 3 benutzt.a) With bit 17 = 0, the least significant 17 bit positions are used for direct access to the 128 kbytes of the dynamic RAM part 3.
b) Mit Bit 17 = 1,16 = 0 bestimmen die nächstniederen vier Bits die Adresse eines der 16 Segmentregister. Die nachfolgenden zwölf Bits bilden den niederen Teil der Adresse des dynamischen RAM-Teils 3, die durch Teile des Inhaltes des ausgewählten Segmentregisters zur vollen 17-Bit-Adresse (für 128 kBytes) ergänzt werden. Dieser Modus wird im folgenden als segmentierter Zugriff bezeichnet.b) With bit 17 = 1.16 = 0, the next lower four bits determine the address of one of the 16 segment registers. The subsequent twelve bits form the lower part of the address of the dynamic RAM part 3, which are supplemented by parts of the contents of the selected segment register to the full 17-bit address (for 128 kbytes). This mode is referred to below as segmented access.
c) Mit Bit 17 = 1,16= 1, 15 = 0,14 = 0 werden die nachfolgenden 14 Bitpositionen für den direkten Zugriff zu den 16 kBytes des ROM-Teils 1 benutzt.c) With bit 17 = 1.16 = 1.15 = 0.14 = 0, the following 14 bit positions are used for direct access to the 16 kbytes of ROM part 1.
d) Mit Bit 17 = 1,16=1, 15 = 0,14=1,5 = 0 werden die niedrigstwertigen 5 Bitpositionen benutzt, um den Segment-RAM 2 als normalen Schreib-Lesespeicher von 32 Bytes Kapazität zu adressieren.d) With bit 17 = 1.16 = 1.15 = 0.14 = 1.5 = 0, the least significant 5 bit positions are used to address the segment RAM 2 as a normal 32 byte write-to-read memory.
e) Mit Bit 5 = 1 werden die verbleibenden Adressenbits zu Registerzugriffen (z.B. zu den Registern 10,11) und zum Auslösen von Sonderfunktionen benutzt. Da der Einsatz von Registern und Sonderschaltungen, beispielsweise zur Diagnose, zu Zwecken des Vergleichs?' ops usw., an sich bekan.it ist und die Adressenzuordnung in beliebiger Waise vorgenommen werden kann, erübrigt sich eine genauere Beschreibung.e) With bit 5 = 1, the remaining address bits are used for register accesses (e.g., to registers 10, 11) and for triggering special functions. As the use of registers and special circuits, for example, for diagnosis, for purposes of comparison? ' ops etc., in itself bekan.it and the address assignment can be made in any orphan, a more detailed description is unnecessary.
Fig. 6 zeigt die Interpretation der 16 Adressenbits der CPU 13.6 shows the interpretation of the 16 address bits of the CPU 13.
a) Mit Bit 15 = 0,14 = 0 werden die verbleibenden 14 Bitpositionen für den direkten Zugriff zu den 16 kBytes des ROM-Teils 1 benutzt.a) With bit 15 = 0.14 = 0, the remaining 14 bit positions are used for direct access to the 16 kbytes of ROM part 1.
b) Mit Bit 15 = 0, 14 = 1,5 = 0 werden die niedrigstwertigen fünf Bits für direkte Lese- und Schreibzugriffe zum Segment-RAM 2 benutzt.b) With bit 15 = 0, 14 = 1.5 = 0, the least significant five bits are used for direct read and write access to the segment RAM 2.
c) Mit Bit 5=1 werden-flie verbleibenden Adressenbits zu Registerzugriffen und zum Auslösen von Sonderfunktionen benutzt.c) With bit 5 = 1, remaining address bits are used for register accesses and for triggering special functions.
d) Mit Bit 15 = 1 bestimmen die nachfolgenden drei Bits die Adresse eines der acht „oberen" Segmentregister (8H... FH). Damit sind segmentierte Zugriffe zum dynamischen RAM-Teil 3 möglich.d) With bit 15 = 1, the following three bits determine the address of one of the eight "upper" segment registers (8H ... FH), allowing segmented access to the dynamic RAM part 3.
Die Adressierungsarten a)...d) remäß Fig.6 entsprechen in den jeweiligen Wirkungen den Arten b)...e) gemäß Fig.5. Ein direkter Zugriff zum dynamischen RAM-Teil 3 ist infolge der Kürze der CPU-Adresse nicht möglich. Aus demselben Grunde können bei segmentierten Zugriffen der CPU 13 nur acht der 16 Segmentregister benutzt werden. Die Belegung der Segmentregister ist in Fig. 7 genauer dargestellt.The addressing modes a) ... d) according to FIG. 6 correspond in the respective effects to the types b)... E) according to FIG. Direct access to the dynamic RAM part 3 is not possible due to the brevity of the CPU address. For the same reason, with segmented accesses of the CPU 13, only eight of the 16 segment registers can be used. The assignment of the segment registers is shown in more detail in FIG.
-5- 720 21-5- 720 21
Die niedrigstwertigen fünf Bitpositionen bilden die höchstwertigen fünf Adressenbits der 17-Bit-Adresse des dynamischen RAM-Teils 3. Die verbleibenden Bits veranlassen Sonderwirkungen parallel zu den eigentlichen Speicherzugriffen. Im folgenden werden davon nur jene näher beschrieben, die für die erfindungsgemäße Anordnung charakteristisch sind.The least significant five bit positions form the most significant five address bits of the 17-bit address of the dynamic RAM part 3. The remaining bits cause special effects parallel to the actual memory accesses. In the following, only those will be described in more detail that are characteristic of the inventive arrangement.
Bit 15 (INTERFACE ACCESS) kennzeichnet, daß ein Zugriff zum externen Interface erfolgt.Bit 15 (INTERFACE ACCESS) indicates that access is to the external interface.
Bit 14 (DMA MODE) kennzeichnet, daß ein direkter Datenaustausch zwischen dem dynamischen RAM-Teil 3, und dem externen Interface stattfindet.Bit 14 (DMA MODE) indicates that a direct data exchange is taking place between the dynamic RAM part 3 and the external interface.
Ist Bit 15 = 1, Bit 14 = 0, so erfolgt der Datenaustausch zwischen CPU 13 bzw. dem externen Bussystem und dem externen Interface. Die Speichermittel der Anordnung werden nicht benutzt.If bit 15 = 1, bit 14 = 0, data is exchanged between CPU 13 or the external bus system and the external interface. The storage means of the arrangement are not used.
Bei Schreibzugriffen werden Datenbytes vom internen Datenbus 5 über das Register 25 zu den auswärtsführenden Interfaceleitungen 8 geliefert.For write accesses, data bytes are supplied from the internal data bus 5 via the register 25 to the outgoing interface lines 8.
Bei Lesezugriffen wird die Belegung der einwärtsführenden Interfaceleitungen 9 über die Koppelschaltung 24 zum internen Datenbus 5 durchgesteuert.During read accesses, the occupancy of the inbound leading interface lines 9 is controlled via the coupling circuit 24 to the internal data bus 5.
Sind die Bits 15,14 beide 1, so liefert die jeweils zugreifende Einrichtung (CPU 13 bzw. das externe Bussystem) eine Adresse für den dynamischen RAM-Teil 3.If the bits 15, 14 are both 1, the respectively accessing device (CPU 13 or the external bus system) supplies an address for the dynamic RAM part 3.
Bei Schreibzugriffen wird die Belegung der einwärtsführenden Interfaceleitungen 9 über die Koppelschaltung 24 und den internen Datenbus 5 in die betreffende Position des dynamischen RAM-Teils 3 eingeschrieben. Bei Lesezugriffen wird der jeweilige Inhalt des dynamischen RAM-Teils 3 über den internen Datenbus 5 und das Register 25 auf die auswärtsführenden Interfaceleitungen 8 gegeben.For write accesses, the occupancy of the inbound leading interface lines 9 is written via the coupling circuit 24 and the internal data bus 5 in the relevant position of the dynamic RAM part 3. For read accesses, the respective contents of the dynamic RAM part 3 are applied via the internal data bus 5 and the register 25 to the outgoing interface lines 8.
Ist also Bit 14 = 0, so bezieht sich die Art des jeweiligen Zugriffs (Lesen/Schreiben) auf das externe Interface, ist Bit 14 = 1 (DMA-Modus aktiv) auf den Zugriff zum dynamischen RAM-Teil 3.Thus, if bit 14 = 0, then the type of access (read / write) to the external interface is bit 14 = 1 (DMA mode active) access to dynamic RAM part 3.
Fig. 8 veranschaulicht den Sachverhalt genauer.Fig. 8 illustrates the situation in more detail.
Das externe Interface umfaßt neben den Datenleitungen 8,9 noch Modusleitungen 27 und Steuerleitungen 28 (Fig. 2). Die meisten der Modusleitungen 27 sind über das Register 26 dem Segment-RAM 2 direkt nachgeordnet. Dafür werden die meisten der in Fig. 7 nicht näher gekennzeichneten Bitpositionen des jeweiligen Segmentregisters benutzt.The external interface comprises, in addition to the data lines 8, 9, mode lines 27 and control lines 28 (FIG. 2). Most of the mode lines 27 are directly downstream of the segment RAM 2 via the register 26. For this purpose, most of the bit positions of the respective segment register which are not identified in detail in FIG. 7 are used.
Weiterhin werden einige Bitpositionen zur Beeinflussung der Steuerleitungen 28 über die Steuerschaltungen 17 verwendet. Ein typisches Beispiel für eine der Steuerleitungen 28 ist eine Strobeimpulsleitung, die dazu dient, die Entgegennahme von Datenbytes zu bestätigen bzw. in das Register 25 eingeschriebene Datenbytes als gültig zu deklarieren.Furthermore, some bit positions are used to influence the control lines 28 via the control circuits 17. A typical example of one of the control lines 28 is a strobe line which serves to confirm the acceptance of data bytes or to declare data bytes written to the register 25 as valid.
Die Bitposition 13 (AUTO STROBE) im jeweiligen Segmentregister veranlaßt, daß nach jedem entsprechenden Zugriff ein solcher Strobeimpuls abgegeben wird. Über die Steuerschaltungen 17 ist damit die Realisierung des geforderten Signalspiels am externen Interface möglich.The bit position 13 (AUTO STROBE) in the respective segment register causes such a strobe pulse to be issued after each respective access. About the control circuits 17 so that the realization of the required signal game on the external interface is possible.
Die Benutzung von Strobe- und Handshake-Signalen ist bei vielen Interfaces üblich, so daß ein näheres Eingehen auf die konkrete Ausgestaltung des Interfaces unterbleiben kann. Eine systematische Übersicht ist beispielsweise in dem Artikel „A systematic approach to the design of digital bussing structures" von Thurber u.a. (Fall Joint Computer Conference 1972, Proceedings Vol.The use of strobe and handshake signals is common in many interfaces, so that a closer attention to the specific design of the interface can be omitted. For example, a systematic review is provided in the article "A systematic approach to the design of digital bussing structures" by Thurber et al. (Case Joint Computer Conference 1972, Proceedings Vol.
41, Part. II, S. 719-740) gegeben. Im folgenden sollen weitere Einzelheiten der Hardware erläutert werden.41, Part II, pp. 719-740). In the following, further details of the hardware will be explained.
Dazu zeigt Fig. 9 jene Schaltmittel, die Information auf den internen Datenbus 5 aufschalten können. Die Auswahlschaltungen 15, 19 sind mit Multiplexerschaltkreisen realisiert. Für jede Einrichtung sind neben den Datensignalen die Steuersignale angegeben.For this purpose, FIG. 9 shows those switching means which can apply information to the internal data bus 5. The selection circuits 15, 19 are realized with multiplexer circuits. For each device, the control signals are indicated in addition to the data signals.
Das Eingaberegister 10 soll im folgenden als Inspektionsregister 10 bezeichnet werden. Es hat die Aufgabe, Fehlersignale und charakteristische Bedingungen zu speichern, so daß diese vom externen Bussystem bzw. von der CPU 13 abgefragt werden können. Der dynamische RAM-Teil 3 umfaßt für jede Speicherposition noch zwei zusätzliche Bits:The input register 10 will be referred to as an inspection register 10 in the following. It has the task of storing error signals and characteristic conditions so that they can be interrogated by the external bus system or by the CPU 13. The dynamic RAM part 3 comprises two additional bits for each memory position:
• ein Paritätsbit für die acht Datenbits, das alternativ zu Vergleichsstopzwecken benutzt werden kann, wie dies im DD-WP 154244 „Speicheranordnung mit Fehlererkennungs- und Diagnoseeigenschaften, vorzugsweise für Mikrorechner" dargestellt ist,A parity bit for the eight data bits, which can be used as an alternative to comparison stop purposes, as shown in DD-WP 154244 "Memory Device with Error Detection and Diagnostic Properties, Preferably for Microcomputers",
• ein Speicherschutzbit. Eine „1" in dieser Bitposition soll ein Fehlersignal liefern, wenn mit der betreffenden Adresse ein Schreibzugriff versucht wird.• a memory protection bit. A "1" in this bit position should provide an error signal when a write access is attempted with the address in question.
Die Fehlersignalisierungsschaltung zeigt Fig. 10.The error signaling circuit is shown in FIG. 10.
Das Fehlersignal ERROR wird zur Fehlerleitung des externen Bussystems durchgesteuert.The error signal ERROR is turned on for error routing of the external bus system.
Weiterhin ist die Erkennung des Paritätsfehlers PARITY CHECK und des Speicherschutzfehlers PROTECT CHECK gezeigt.Furthermore, the detection of the parity error PARITY CHECK and the memory protection error PROTECT CHECK is shown.
Die ErlaubnissignaleThe permission signals
ENABLE PARITY (Zulassen Paritätsprüfung) undENABLE PARITY (allow parity check) and
ENABLE ERROR (Zulassen Fehlersignalisierung)ENABLE ERROR (allow error signaling)
stammen aus Teilen der Ausgangsregister 11.come from parts of the output register 11.
Das Inspektionsregister 10 dient zum einen als Fehlerregister. Bei zugelassener Fehlersignalisierung werden die entsprechenden Signale bei jedem Zugriff zum dynamischen RAM-Teil 3 in das Register übernommen. Mit Auftreten des Fehlers unterbleibt die Signalisierung, so daß der Zustand des fehlerhaften Zugriffs erhalten bleibt.The inspection register 10 serves as an error register. If error signaling is permitted, the corresponding signals are transferred to the register each time the dynamic RAM part 3 is accessed. With the occurrence of the error, the signaling is omitted, so that the state of the erroneous access is maintained.
Eine analoge Betriebsweise wurde im DD-WP 159916 „Mikrorechneranordnung, Vorzug; weise für den Einsatz in Multimikrorechhci systemen" näher beschrieben.An analog mode of operation was described in DD-WP 159916 "Microcomputer arrangement, preference; For use in Multimikrorechhci systems "described in more detail.
Die zweite Betriebsweise dient zum Abfragen der zusätzlichen Bitpositionen, des Pantätsfehlersignals usw., um den Inhalt des dynamischen RAM-Teils 3 zyklisch inspizieren zu können. Dies geschieht vorzugsweise von der CPU 13 aus. So können u.a.The second mode of operation is for interrogating the additional bit positions, the parity error signal, etc. in order to cyclically inspect the content of the dynamic RAM part 3. This is preferably done by the CPU 13. So can u.a.
folgende Kontrollen des Speicherinhaltes durchgeführt werden:following checks of the memory contents are carried out:
• Kontrolle aller 128 kBytes auf korrekte Parität• Control of all 128 kbytes for correct parity
• Kontrolle der Speicherschutzbits (durch Vergleich mit.entsDrechenden Beschreibungsblöcken)• Checking the memory protection bits (by comparing with.entString description blocks)
• Bildung von Prüfsummen über die geschützten Bereiche.• Formation of checksums over the protected areas.
Damit das Inspektionsregister 10 auf diese Weise geladen wird, ist ENABLE ERROR zu deaktivieren. Ein Laden wird bei allen segmentierten Zugriffen ausgeführt, wenn im jeweiligen Segmentregister LOAD INSPECTION gesetzt ist.In order to load the inspection register 10 in this way, ENABLE ERROR must be deactivated. A load is executed for all segmented accesses if LOAD INSPECTION is set in the respective segment register.
Zweckmäßigerweise wird dafür nur ein Segmentregister vorgesehen, so daß die zyklische Inspektion unabhängig von anderweitigen Zugriffen ausgeführt werden kann.Conveniently, only a segment register is provided for this, so that the cyclic inspection can be carried out independently of other accesses.
Die interne Ablaufsteuerung 31 ist in Fig. 11 und im zugehörigen Taktdiagramm Fig. 12 näher dargestellt.The internal sequence control 31 is shown in greater detail in FIG. 11 and in the associated timing diagram FIG.
Der Grundtakt der Anordnung hat eine Periodendauer von etwa 72 ns.The basic clock of the arrangement has a period of about 72 ns.
Daraus werden von einem 12stelligen Schieberegister aufeinanderfolgende Impulse P1 ...P12 abgeleitet.From this, successive pulses P1... P12 are derived from a 12-digit shift register.
In jedem Zyklus hält die Vermittlungsschaltung 30 das Signal CYCLE RUNNING aktiv, bis die Ablaufsteuerung 31 das Signal END abgibt.In each cycle, the switch circuit 30 keeps the signal CYCLE RUNNING active until the scheduler 31 issues the signal END.
-6- 720 21-6- 720 21
Die Länge eines Zyklus hängt von der Art des jeweiligen Zugriffs ab.The length of a cycle depends on the type of access.
Bei ROM-Zugriffen (ROM ACCESS) wird END nach Abgabe von P7 erregt, P8... P12 werden nicht wirksam.For ROM access, END is energized after P7 is issued, P8 ... P12 will not take effect.
Direkte Lesezugriffe zu RAMs veranlassen END nach Abgabe von P9.Direct read accesses to RAM cause END after delivery of P9.
Bei allen anderen RAM-Zugriffen wird END nach P12 abgegeben. Aus diesen Signalen werden durch einfache Verknüpfungen die internen Steuersignale für die Speicherzugriffe gebildet (für den dynamischen RAM-Teil 3 z. B. RAS, Adressenumschaltung, Schreibimpulse, CAS usw.).For all other RAM accesses, END will be returned to P12. From these signals, the internal control signals for the memory accesses are formed by simple links (for the dynamic RAM part 3, for example, RAS, address switching, write pulses, CAS, etc.).
Fig. 13 zeigt den Aufbau der Vermittlungsschaltung 30. Es handelt sich um eine Prioritätsvermittlung, die aus den Anforderungssignalen der CPU 13 (CPU REQUEST) und des externen Bussystems (SLAVE REQUEST) ableitet, welcher Zugriff im jeweils folgenden Zyklus ausgeführt werden soll. Von den Steuersignalen CPU CYCLE (Zugriff seitens der CPU 13) und SLAVE CYCLE (Zugriff seitens des externen Bussystems) ist jeweils nur eines aktiv. Dabei haben Zugriffe der CPU 13 eine höhere Priorität.Fig. 13 shows the structure of the switching circuit 30. It is a priority switch which derives from the request signals of the CPU 13 (CPU REQUEST) and the external bus system (SLAVE REQUEST) which access is to be executed in the following cycle. Only one of the control signals CPU CYCLE (access by the CPU 13) and SLAVE CYCLE (access by the external bus system) is active. In this case, accesses of the CPU 13 have a higher priority.
Eine ähnliche Anordnung aus Prioritätsvermittlung und Ablaufsteuerung ist im DD-WP 159916 näher beschrieben.A similar arrangement of priority switching and sequence control is described in more detail in DD-WP 159916.
Ein charakteristischer Unterschied besteht darin, daß die genannte Anordnung einen Zyklus so lange aktiv hält, bis die jeweils auslösende Einrichtung das Ende des betreffenden Zugriffs signalisiert hat, während hier der Zyklus sofort nach Ablauf des eigentlichen Speicherzugriffs beendet wird. Damit kann bereits ein neuer Zyklus gestartet werden, wenn die auslösende Einrichtung des vorausgegangenen Zyklus ihre internen Abläufe (z. B. einen Handshaking-Ablauf, das Beenden eines Zugriffs nach Abfall eines WAIT-Signals usw.) noch zu Ende führt.A characteristic difference is that said device keeps a cycle active until the triggering device has signaled the end of the access in question, while here the cycle is terminated immediately after the actual memory access has expired. Thus, a new cycle may already be started if the initiating means of the previous cycle still completes its internal processes (eg, a handshaking process, terminating an access after dropping a WAIT signal, etc.).
Zur weiteren Veranschaulichung zeigen Fig. 14 die CPU-Steuerschaltung 29 und Fig. 15 das Taktdiagramm eines CPU-Zugriffs.For further illustration, Fig. 14 shows the CPU control circuit 29 and Fig. 15 shows the timing chart of a CPU access.
Ein CPU-Zugriff beginnt stets mit Erregung von MREQ, wenn die gültige Adresse auf den Adressenleitungen der CPU liegt.CPU access always begins with MREQ energized when the valid address is on the address lines of the CPU.
Dies führt sofort zum Einschalten von WAIT. Ist die Art des gewünschten Zugriffs eindeutig bestimmt (RD ν WR = 1), so wird das Anforderungssignal CPU REQUEST für die Vermittlungsschaltung 13 aktiv.This will immediately turn on WAIT. If the type of access desired is uniquely determined (RD ν WR = 1), the request signal CPU REQUEST becomes active for the switching circuit 13.
Der END-Impuls des nachfolgenden CPU-Zyklus schaltet WAIT aus. Da die internen Busleitungen nur innerhalb von Zyklen belegt werden (d. h. wenn CPU CYCLE ν SLAVE CYCLE = CYCLE RUNNING = 1), stehen nach END die internen Busleitungen und damit die Speichermittel für weitere Zugriffe zur Verfügung, auch in der Zeit, die vergeht, bis MREQ nach Ausschalten von WAIT wieder inaktiv wird.The END pulse of the subsequent CPU cycle turns off WAIT. Since the internal bus lines are only occupied within cycles (ie when CPU CYCLE ν SLAVE CYCLE = CYCLE RUNNING = 1), the internal bus lines and thus the storage means are available for further accesses, including in the time that elapses, to END MREQ becomes inactive again after switching off WAIT.
Bei Schreibzugriffen ist dies besonders unproblematisch, da die Daten bereits in die betreffende Speicheranordnung eingetragen wurden.This is particularly unproblematic for write accesses because the data has already been entered in the relevant memory arrangement.
Bei Lesezugriffen wird die gelesene Information im CPU-Leseregister 20 gespeichert und mit ENABLE CPU READ bis zum Ende des Zugriffs (MREQ inaktiv) auf den Datenbus der CPU 13 geschaltet.For read accesses, the read information is stored in the CPU read register 20 and switched to the data bus of the CPU 13 with ENABLE CPU READ until the end of access (MREQ inactive).
In analoger Weise ist die Steuerschaltung 12 des externen Bussystems gemäß Fig. 16 ausgelegt. Fig. 17 zeigt das zugehörige Taktdiagramm.In an analogous manner, the control circuit 12 of the external bus system according to FIG. 16 is designed. Fig. 17 shows the associated timing diagram.
Die Auswahl am Bussystem wird durch Vergleich der beiden höchstwertigen Busadressenbits 19,18 mit einer fest eingestellten Adresse erkannt, wenn die Steuerleitung BUSY aktiv ist. Das entsprechende Signal SLAVE ACCESS wird zwecks Unterdrückung von Störungen erst dann abgegeben, wenn die Auswahlbedingung eine gewisse Zeit aktiv war. SLAVE ACCESS führt sofort zum Einschalten des Anforderungssignals SLAVE REQUEST.The selection on the bus system is detected by comparing the two most significant Busadressenbits 19,18 with a fixed address when the control line BUSY is active. The corresponding signal SLAVE ACCESS is issued for the purpose of suppression of interference only when the selection condition has been active for a certain time. SLAVE ACCESS immediately switches on the request signal SLAVE REQUEST.
Der END-Impuls des nachfolgenden Slave-Zyklus schaltet die Antwortleitung REPLY des externen Bussystems ein, die so lange aktiv gehalten wird, bis der Buszugriff beendet ist.The END pulse of the subsequent slave cycle switches on the REPLY response line of the external bus system, which is kept active until bus access is completed.
Zwischenzeitlich kann intern ein neuer Zyklus gestartet werden.In the meantime, a new cycle can be started internally.
Bei Lesezugriffen wird die gelesene Information im Busleseregister 21 gespeichert, das mit ENABLE SLAVE READ für die gesamte Dauer des Buszugriffs auf die Datenleitungen des externen Bussystems geschaltet wird.For read accesses, the read information is stored in the bus read register 21, which is switched with ENABLE SLAVE READ for the entire duration of the bus access to the data lines of the external bus system.
Die Bildung der wesentlichen internen Steuersignale ist in den Fig. 18, 19 schematisch dargestellt.The formation of the essential internal control signals is shown schematically in FIGS. 18, 19.
Diese Signale werden aus Signalen des externen Bussystems, der CPU 13 und der anderen bereits erläuterten Schaltmittel kombinatorisch erzeugt.These signals are generated combinatorially from signals of the external bus system, the CPU 13 and the other switching means already explained.
Eine bekannte Lösung ist die Realisierung kombinatorischer Verknüpfungen mit ROM- bzw. PLA-Schaltkreisen. Dies soll im folgenden vorausgesetzt werden. Damit ist zur Kennzeichnung der wesentlichen Steuersignale die Angabe der jeweiligen Booleschen Gleichung ausreichend.A known solution is the realization of combinatorial links with ROM or PLA circuits. This will be assumed in the following. Thus, the specification of the respective Boolean equation is sufficient for characterizing the essential control signals.
RAM ECCESS kennzeichnet den Zugriff zum dynamischen RAM-Teil 3. Damit wird ein RAS-Impuls an alle RAM-Schaltkreise abgegeben (dieser wird durch P3 gebildet).RAM ECCESS identifies access to the dynamic RAM part 3. This sends a RAS pulse to all RAM circuits (this is formed by P3).
RAM ACCESS = SLAVE CYCLE . (/ADRS 17 ν /ADRS 16) ν CPU CYCLE . ADRS 15 RAM O ACCESS, RAM 1 ACCESS dienen zur Ableitung der CAS-Impulse (mit P6), um eine der beiden Reihen von 64 kbit-Schaltkreisen mit aktuellen Zyklus auszuwählen.RAM ACCESS = SLAVE CYCLE. (/ ADRS 17 ν / ADRS 16) ν CPU CYCLE. ADRS 15 RAM O ACCESS, RAM 1 ACCESS are used to derive the CAS pulses (with P6) to select one of the two sets of 64 kbit current cycle circuits.
RAM O ACCESS = RAM ACCESS . (/SEGMENTED ACCESS . /ADRS 16 ν /SEGMENT RAM 4) RAM 1 ACCESS = RAM ACCESS . (/SEGMENTED ACCESS . ADRS 16 ν SEGMENT RAM 4) SEGMENT RAM ACCESS kennzeichnet den direkten Zugriff zum Segment-RAM 2 (d. h. dessen Benutzung als normalen Schreib-Lesespeicher).RAM O ACCESS = RAM ACCESS. (/ SEGMENTED ACCESS. / ADRS 16 ν / SEGMENT RAM 4) RAM 1 ACCESS = RAM ACCESS. (/ SEGMENTED ACCESS. ADRS 16 ν SEGMENT RAM 4) SEGMENT RAM ACCESS identifies direct access to the segment RAM 2 (i.e., its use as a normal random access memory).
SEGMENT RAM ACCCSS = (SLAVE CYCLE . л DRS 17 . ADRS 16 ν CPU CYCLE) . /ADRS 15 . ADPS 14 . /ADRS 5 SEGMENTED ACCESS kennzeichnet alle segmentierten Zugriffe zum dynamischen RAM-Teil 3.SEGMENT RAM ACC C SS = (SLAVE CYCLE.L DRS 17, ADRS 16 ν CPU CYCLE). / ADRS 15. ADPS 14. / ADRS 5 SEGMENTED ACCESS identifies all segmented accesses to dynamic RAM part 3.
SEGMENTED ACCESS = RAM ACCESS . (CPU CYCLE v ADRS 17 . /ADRS 16) ROM ACCESS kennzeichnet den Zugriff zum ROM-Teil 1.SEGMENTED ACCESS = RAM ACCESS. (CPU CYCLE v ADRS 17. / ADRS 16) ROM ACCESS identifies the access to the ROM part 1.
ROM ACCESS = (SLAVE CYCLE . ADRS 17 . ADRS 16 ν CPU CYCLE). /ADRS 15 . /ADRS 14 REGISTER ACCESS kennzeichnet Zugriffe zu internen Registern und zur Auflösung von Sonderwirkungen.ROM ACCESS = (SLAVE CYCLE.ADRS 17. ADRS 16 ν CPU CYCLE). / ADRS 15. / ADRS 14 REGISTER ACCESS indicates access to internal registers and the resolution of special effects.
REGISTER ACCESS = (SLAVE CYCLE . ADRS 17 . ADRS 16 ν CPU CYCLE). /ADRS 15 . ADRS 14. ADRS 5 Die folgenden sechs Signale veranlassen das Aufschalten von Information auf den internen Datenbus 5 (vgl. Fig. 9):REGISTER ACCESS = (SLAVE CYCLE.ADRS 17. ADRS 16 ν CPU CYCLE). / ADRS 15. ADRS 14. ADRS 5 The following six signals cause information to be applied to the internal data bus 5 (see Fig. 9):
SEGMENT RAM TO BUS = SEGMENT RAM ACCESS . READSEGMENT RAM TO BUS = SEGMENT RAM ACCESS. READ
INTERFACETOBUS = SEGMENTEDACCESS. SEGMENT RAM 15.(/SEGMENTRAM 14 . READ ν SEGMENT RAM 14. WRITE) INSPECTION TO BUS = REGISTER ACCESS . READ . /ADRS 0INTERFACETOBUS = SEGMENTEDACCESS. SEGMENT RAM 15. (/ SEGMENT RAM 14 READ ν SEGMENT RAM 14th WRITE) INSPECTION TO BUS = REGISTER ACCESS. READ. / ADRS 0
(ADRS 0 = 1 veranlaßt also bei Adressierungsweisen gemäß Fig.5e bzw. Fig. 6c das Lesen des Inspektionsregisters 10.) DATA TO BUS = WRITE . /(SEGMENTED ACCESS . SEGMENT RAM 15 . SEGMENT RAM 14) RAM TO BUS = RAM ACCESS . READ(ADRS 0 = 1 thus causes the inspection register 10 to be read in addressing modes according to FIG. 5e or 6c) DATA TO BUS = WRITE. / (SEGMENTED ACCESS SEGMENT RAM 15 SECTION RAM 14) RAM TO BUS = RAM ACCESS. READ
ROM TO BUS = ROM ACCESS . READROM TO BUS = ROM ACCESS. READ
Die folgenden fünf Signale sind Schreib- bzw. Ladeimpulse für Speicher bzw. Register.The following five signals are write and load pulses for memory and register, respectively.
Die zugehörigen Erlaubnissignale werden wie folgt gebildet:The associated permission signals are formed as follows:
WRITE LO SEGMENT RAM = SEGMENT RAM ACCESS . WRITE . /ADRS 0WRITE LO SEGMENT RAM = SEGMENT RAM ACCESS. WRITE. / ADRS 0
WRITE Hl SEGMENT RAM = SEGMENT RAM ACCESS . WRITE . ADRS 0WRITE Hl SEGMENT RAM = SEGMENT RAM ACCESS. WRITE. ADRS 0
Das Schreiben findet im Zeitintervall zwischen P11 und P12 statt.The writing takes place in the time interval between P11 and P12.
ACEDATA = SEGMENTEDACCESS1SEGMENTRAMIS(ZSEGMENTRAMM-WRITEVSEGMENTRAMm1READ) BUS DATA = SLAVE CYCLE . READACEDATA = SEGMENTEDACCESS 1 SEGMENTRAMIS (ZSEGMENTRAM WRITEVSEGMENTRAMm 1 READ) BUS DATA = SLAVE CYCLE. READ
(Ladeimpuls für das Busleseregister 21)(Load pulse for the bus read register 21)
LOAD CPU DATA = CPU CYCLE . READLOAD CPU DATA = CPU CYCLE. READ
(Ladeimpuls für das CPU-Leseregister 20).(Load pulse for the CPU read register 20).
Die Ladeimpulse sind vom Beginn eines Zyklus bis zum Einschalten von END aktiv.The load pulses are active from the beginning of a cycle until END is turned on.
Das Ladesignal für das Ausgangsregister 23 des dynamischen RAM-Teils 3 wird zwischen P8und P10 abgegeben (LOAD RAM OUTPUT).The load signal for the output register 23 of the dynamic RAM part 3 is output between P8 and P10 (LOAD RAM OUTPUT).
Fig. 20 zeigt Details aus den Steuerschaltungen 17 des externen Interfaces zur Erzeugung des bereits erwähnten Strobesignals.Fig. 20 shows details of the control circuits 17 of the external interface for generating the already mentioned strobe signal.
DasStrobesignal wird im jeweils nächsten Zyklus (nach Aktivierung durch SEGMENT RAM 13 = 1) abgegeben und im übernächsten ausgeschaltet. Da die CPU 13 stets Zyklen anfordert, ist die Betriebsfähigkeit der Schaltung stets gewährleistet.The strobe signal is emitted in the next cycle (after activation by SEGMENT RAM 13 = 1) and switched off the next but one. Since the CPU 13 always requests cycles, the operability of the circuit is always guaranteed.
Auf diese Weise wird ein Zeitversatz zwischen dem Laden des Registers 8 bzw. der Abnahme der Information der Eingangsleitungen 9 und dem Strobesignal gewährleistet.In this way, a time offset between the loading of the register 8 and the decrease of the information of the input lines 9 and the strobe signal is ensured.
Wird am dynamischen RAM-Teil 3 ein Vergleichsstop wirksam (Signal COMPARE STOP aktiv), so wird das Ausschalten von STROBE bis zum Senden eines CLEAR-lmpulses aktiv gehalten. Damit sind nach einem Vergleichsstop statische Messungen am externen Interface möglich. DerCLEAR-lmpuls ist durch Registerzugriffe programmtechnisch auslösbar.If a comparison stop is active on the dynamic RAM section 3 (signal COMPARE STOP active), switching off STROBE until the transmission of a CLEAR pulse is kept active. This makes static measurements on the external interface possible after a comparison stop. The CLEAR pulse can be triggered programmatically by register accesses.
Die Anordnung kann zunächst über das externe Bussystem wie eine übliche Speicheranordnung gemäß Fig. 1 betrieben werden.The arrangement can first be operated via the external bus system like a conventional memory arrangement according to FIG.
In diesem Fall führt die CPU 13 lediglich Refresh-Zugriffe aus. Für eine genauere Inspektion des dynamischen RAM-Teils 3 können einige Bytes im Segment-RAM 2 als Steuer- und Kommunikationsbereich reserviert werden. Dort wird eingetragen, welche zusätzlichen Prüfungen ausgeführt werden sollen (z.B. Inspektion der Parität, der Speicherschutzbits usw.). Eine beträchtliche Leistungserhöhung am externen Interface ist erreichbar, wenn die CPU 13 zusätzlich dazu benutzt wird, bestimmte Aufträge auszuführen. Besonders geeignet dafür sind solche Abläufe, die an sich durch Zugriffe zu aufeinanderfolgenden RAM-Adressen ein Auffrischen des RAM-Inhalts gewährleisten. Ein charakteristisches Beispiel dafür ist ein blockweiser Datentransport vom dynamischen RAM-Teil 3 zu den Ausgangsleitungen 8 des externen Interfaces.In this case, the CPU 13 only performs refresh accesses. For a more accurate inspection of the dynamic RAM part 3, some bytes in the segment RAM 2 can be reserved as a control and communication area. It will record which additional checks to perform (e.g., parity inspection, memory protection bits, etc.). A significant increase in performance on the external interface is achievable if the CPU 13 is additionally used to execute certain jobs. Particularly suitable for this are those processes which ensure a refreshing of the RAM content by accesses to successive RAM addresses. A characteristic example of this is a block-wise data transport from the dynamic RAM part 3 to the output lines 8 of the external interface.
Üblich ist es, dafür Blocktransportbefehle (z.B. LDIR) zu benutzen. Ein solcher Befehl dauert z.B. bei einer gegebenen CPU 21 Maschinenzyklen. Die Leistungsfähigkeit wird im wesentlichen dadurch begrenzt, daß jedes Datenbyte zweimal über den internen Datenbus 5 transportiert wird (vom Speicher in die CPU 13, von der CPU 13 zum Interface). Der spezielle DMA-Modus vermeidet diesen Nachteil, da der Datenaustausch zwischen Speicher und Interface direkt erfolgt, die CPU also nur noch die Adresse liefert.It is customary to use block transport instructions (for example LDIR) for this purpose. Such an instruction takes e.g. 21 given machine cycles for a given CPU. The performance is essentially limited by the fact that each data byte is transported twice over the internal data bus 5 (from the memory to the CPU 13, from the CPU 13 to the interface). The special DMA mode avoids this disadvantage, since the data exchange between memory and interface takes place directly, so the CPU only delivers the address.
Damit läßt sich ein lineares Programmstück angeben, mit dem bis zu 256 Bytes wesentlich schneller transportiert werden können.This can be a linear program piece specify, with which up to 256 bytes can be transported much faster.
LD HL, Blockadresse; (segmentierter Zugriff, Segmentregister zuvor entsprechend geladen) LD A, (HL)LD HL, block address; (segmented access, segment registers previously loaded accordingly) LD A, (HL)
LDA, (HL)LDA, (HL)
usw. (insgesamt 256 Befehlspaare LD; INC)etc. (a total of 256 command pairs LD; INC)
Der Ladebefehl veranlaßt den Transport des Speicherinhaltes zum SPIF und der Increment-Befehl die Adressenerhöhung.The load instruction causes the transport of the memory contents to the SPIF and the increment instruction causes the address increase.
Für längere Datenblöcke kann das Programmstück mehrmals aufgerufen werden.For longer data blocks, the program piece can be called several times.
Pro Byte werden lediglich 11 Maschinentakte der CPU benötigt. Wesentlich ist weiterhin, daß ein derartiges Programmierprinzip auch für kompliziertere Abläufe (etwa mit Analyse der übertragenen Bytes) möglich ist.Only 11 machine cycles of the CPU are required per byte. It is also essential that such a programming principle is also possible for more complicated processes (for example with analysis of the transmitted bytes).
Die Vorteile der erfindungsgemäßen Anordnung lassen sich wie folgt zusammenfassen:The advantages of the arrangement according to the invention can be summarized as follows:
1. Es wird eine Programmierweise zum Betrieb des externen Interfaces ermöglicht, die eine wesentlich höhere Datenrate bei unverminderter Flexibilität gewährleistet. Wesentlich dafür sind der besondere DMA-Modus für den Datenaustausch zwischen Speicherund Interface, die große Speicherkapazität an sich (wodurch der Platz für schnelle lineare Programmstücke zur Verfugung steht) sowie das Segmentierungsprinzip, das es einer kostengünstigen 8-Bit-CPU ermöglicht, von der großen Speicherkapazität wirksamen Gebrauch zu machen.1. A programming mode for operating the external interface is provided, which ensures a much higher data rate with undiminished flexibility. Essential for this are the special DMA mode for the data exchange between memory and interface, the large storage capacity itself (which provides the space for fast linear program pieces available) and the segmentation principle, which allows a low-cost 8-bit CPU from the large Memory capacity to make effective use.
2. Es ist die Möglichkeit vorhanden, während des Auffrischens des dynamischen RAM-TeilsweiterePrüfu.n, :n des RAM-Inhalts auszuführen. Dadurch, daß der Segment-RAM sowohl für die Adressenumsetzung als auch als normaler Lese-Schreibspeicher nutzbar ist, ist der Austausch von Steuer- und Fehlerinformation (die durch Fehler im zu prüfenden dynamischen RAM nicht beeinträchtigt werden darf) ohne Schwierigkeiten und ohne zusätzlichen Aufwand möglich.2. There is the possibility to perform further checks of the RAM contents while the dynamic RAM part is being refreshed. The fact that the segment RAM can be used both for the address conversion and as a normal read-write memory, the exchange of control and error information (which may not be affected by errors in the dynamic RAM to be tested) is possible without difficulty and without additional effort ,
3. Der Schaltkreisaufwand ist relativ gering, da überwiegend hochintegrierte Speicher und mikrorechnerspezifische Schaltkreise eingesetzt werden können.3. The circuit complexity is relatively low, since mostly highly integrated memory and microcomputer specific circuits can be used.
4. Durch die eingebaute CPU kann eine Vielzahl interner Tests ausgeführt werden, die die Hardware weitgehend überprüfen, so daß sich die Fehlersuchzeiten reduzieren.4. The built-in CPU allows a variety of internal tests to be performed that extensively check the hardware to reduce debugging times.
5. Durch die Möglichkeit, alle Speichermittel sowie das externe Interface sowohl von der internen CPU 13 als auch über das externe Bussystem benutzen bzw. betreiben zu können, ist die Anordnung günstig in Multimikrorechnersystemen einsetzbar. Durch die erfindungsgemäße Ausgestaltung treten trotz des konkurrierenden Zugriffs zu den genannten Schaltmitteln keine bedeutenden gegenseitigen Behinderungen auf. Das externe Interface kann somit in der je nach Betriebsfall günstigsten Weise gesteuert werden.5. The ability to use or operate all the storage means and the external interface both from the internal CPU 13 and via the external bus system, the arrangement is conveniently used in multi-cardiac computer systems. Due to the configuration according to the invention, despite the concurrent access to the mentioned switching means, no significant mutual impediments occur. The external interface can thus be controlled in the most favorable manner depending on the operating mode.
Zur Veranschaulichung zeigt Fig. 21 einen Ausschnitt aus einem Multimikrorechnersystem mit der erfindungsgemäßen Anordnung 32 (mit CPU 13) und Mikrorechnern 33,34. Der Mikrorechner 33 ist mit Floppy-Disc-Laufwerken 35 verbunden. Besteht nun die Aufgabe darin, von einem der Floppy-Disc-Laufwerke 35 Datenblöcke über das externe Interface zu übertragen, so erfolgt dies zweckmäßigerweise direkt durch den Mikrorechner 33.For the purpose of illustration, FIG. 21 shows a detail of a multi-microcomputer system with the arrangement 32 according to the invention (with CPU 13) and microcomputers 33, 34. The microcomputer 33 is connected to floppy disk drives 35. If the task now consists of transferring 35 data blocks from one of the floppy disk drives via the external interface, this is expediently carried out directly by the microcomputer 33.
Da jedes Datenbyte über den Systembus übertragen werden muß (durch Masterzugriffe seitens des Mikrorechners 33) und da sich Datentransport und Floppy-Disc-Zugriffe gegenseitig ausschließen, hätte eine Pufferung im RAM der Anordnung 32 lediglich einen Zeitverlust zur Folge.Since each data byte must be transmitted over the system bus (by master accesses from the microcomputer 33) and since data transport and floppy disk accesses are mutually exclusive, buffering in the array 32 RAM would only result in a loss of time.
In einer anderen Betriebsweise, die z. B. darin besteht, daß zyklisch Information über das externe Interface beschafft und nach bestimmten Kriterien interpretiert wird, wobei die globale Steuerung im Rahmen des Systems dem Mikrorechner 34 obliegt, hätte ein zyklisches Zugreifen des Mikrorechners 34 über den Systembus (zwecks direkter Steuerung des externen Interfaces) eine starke Behinderung anderer Einrichtungen am Systembus zur Folge. In diesem Fall ist es zweckmäßiger, wenn die Interfacezugriffe von der CPU 13 gesteuert werden. Damit sind vom steuernden Mikrorechner 34 nur Buszugriffe zur Erteilung der entsprechenden Aufträge und zur Übernahme der Resultate auszuführen, wodurch eine wesentliche Entlastung des Bussystems und des Mikrorechners 34 eintritt.In another mode of operation, the z. B. is that cyclically procured information over the external interface and interpreted according to certain criteria, the global control in the context of the system the microcomputer 34 incumbent, would have a cyclic access of the microcomputer 34 via the system bus (for direct control of the external interface ) results in a severe obstruction of other facilities on the system bus. In this case, it is more convenient if the interface accesses are controlled by the CPU 13. Thus, from the controlling microcomputer 34 only bus access to issue the corresponding orders and to take over the results, whereby a substantial relief of the bus system and the microcomputer 34 occurs.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DD27202184A DD233435A1 (en) | 1984-12-28 | 1984-12-28 | MEMORY ARRANGEMENT WITH INPUT / OUTPUT CONNECTION, PREFERABLY FOR USE IN MULTIMIKRORECHNERSYSTEMEN |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DD27202184A DD233435A1 (en) | 1984-12-28 | 1984-12-28 | MEMORY ARRANGEMENT WITH INPUT / OUTPUT CONNECTION, PREFERABLY FOR USE IN MULTIMIKRORECHNERSYSTEMEN |
Publications (1)
Publication Number | Publication Date |
---|---|
DD233435A1 true DD233435A1 (en) | 1986-02-26 |
Family
ID=5564373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DD27202184A DD233435A1 (en) | 1984-12-28 | 1984-12-28 | MEMORY ARRANGEMENT WITH INPUT / OUTPUT CONNECTION, PREFERABLY FOR USE IN MULTIMIKRORECHNERSYSTEMEN |
Country Status (1)
Country | Link |
---|---|
DD (1) | DD233435A1 (en) |
-
1984
- 1984-12-28 DD DD27202184A patent/DD233435A1/en unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102006002526B4 (en) | A solid state disk controller and method of operating the same | |
DE69221045T2 (en) | Method and device for programmable memory control with error control and test functions | |
DE68926036T2 (en) | Memory configuration for use in interfacing between a system controller for a multiprocessor system and the main memory | |
EP1720100B1 (en) | Method and apparatus for emulating a programmable unit | |
DE3786862T2 (en) | Fault-tolerant computer architecture. | |
DE69915243T2 (en) | Disk array control device | |
DE69323861T2 (en) | Multiprocessor system with shared memory | |
DE69132652T2 (en) | Rechnerdatenleitweglenkungssystem | |
DE69325774T2 (en) | Programmable external storage control device | |
DE69930307T2 (en) | DATA STORAGE SYSTEM | |
DE19639972B4 (en) | High speed test circuit for a semiconductor memory device | |
DE69029815T2 (en) | CENTRALIZED REFERENCE AND CHANGE TABLE FOR A VIRTUAL STORAGE ARRANGEMENT | |
DE10048402A1 (en) | Data storage system e.g. for large main computer systems with large capacity data storage systems, has host computer connected to disc-drives via interface provided with number of controls for controlling data transfer | |
EP1565825A2 (en) | Device and method for analysing embedded systems | |
DE69717385T2 (en) | Storage device inspection method and system | |
DE3650642T2 (en) | Storage means with multi-word reading and writing | |
DE4335061C2 (en) | Multi-storage device | |
DE69229303T2 (en) | Sharing memory for communication between processors | |
DE69017367T2 (en) | Circuit for testability. | |
DE69028449T2 (en) | System for testing the comparison test function of a data processing system | |
DE68925772T2 (en) | Program data memory used in a microcomputer system | |
DE69502133T2 (en) | Data processor with common connection for monitoring internal and external storage events | |
DD233435A1 (en) | MEMORY ARRANGEMENT WITH INPUT / OUTPUT CONNECTION, PREFERABLY FOR USE IN MULTIMIKRORECHNERSYSTEMEN | |
DE2842603A1 (en) | INTERFACE BETWEEN A MAINTENANCE PROCESSOR AND A MULTIPLE NUMBER OF FUNCTIONAL UNITS TO BE CHECKED IN A DATA PROCESSING SYSTEM | |
DE112019006932T5 (en) | PROGRAMMABLE DIRECT MEMORY ACCESS CONTROLLER IN ANY ORDER FOR CONFIGURATION OF SEVERAL CORE INDEPENDENT PERIPHERAL DEVICES |