DE3537115A1 - METHOD FOR OPERATING A DEVICE WITH TWO INDEPENDENT COMMAND INPUTS AND DEVICE WORKING ACCORDING TO THIS METHOD - Google Patents
METHOD FOR OPERATING A DEVICE WITH TWO INDEPENDENT COMMAND INPUTS AND DEVICE WORKING ACCORDING TO THIS METHODInfo
- Publication number
- DE3537115A1 DE3537115A1 DE19853537115 DE3537115A DE3537115A1 DE 3537115 A1 DE3537115 A1 DE 3537115A1 DE 19853537115 DE19853537115 DE 19853537115 DE 3537115 A DE3537115 A DE 3537115A DE 3537115 A1 DE3537115 A1 DE 3537115A1
- Authority
- DE
- Germany
- Prior art keywords
- command
- memory
- point
- input
- entered
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/18—Handling requests for interconnection or transfer for access to memory bus based on priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Static Random-Access Memory (AREA)
Description
Die Erfindung betrifft ein Verfahren zum Betreiben einer Einrichtung mit zwei voneinander unabhängigen Befehlseingabestellen und eine nach diesem Verfahren arbeitende Einrichtung.The invention relates to a method for operating a Establishment with two independent command entry points and one working according to this procedure Facility.
Einrichtungen mit zwei voneinander unabhängigen Befehlseingabestellen sind beispielsweise solche Halbleiterspeicher, die als Dual-Port-Memories bezeichnet werden. Ein derartiger Halbleiterspeicher ist mit zwei Sätzen von Daten- und Adressleitungen versehen. Über weitere Eingängee können nun die beiden Sätze von Daten- und Adressleitungen zur Ein- oder Ausgabe aktiviert werden. Durch geeignete Maßnahmen muß dabei sichergestellt werden, daß bei gleichzeitiger oder beinahe gleichzeitiger Aktivierung von beiden Seiten her sich keine gegenseitigen Störungen ergeben. Bei einem solchen auf dem Markt befindlichen Speicherbaustein Am29705 der Firma AMD muß dies der Anwender durch äußere Beschaltung selbst sicherstellen. Ein Beispiel hierfür wird im zugehörigen Datenblatt nicht angegeben. Das angeschnittene Problem tritt nicht nur bei den hier als Beispiel ausgewählten Dual-Port-Memories auf, sondern auch bei einer Vielzahl andersartiger Einrichtungen mit zwei oder mehr voneinander unabhängigen Befehlseingabestellen. Eine Standardlösung dieses Problems ist nicht bekannt.Facilities with two independent Command entry points are, for example, such semiconductor memories, which are referred to as dual port memories will. Such a semiconductor memory has two Provide sets of data and address lines. over further inputs can now the two sets of data and address lines activated for input or output will. Suitable measures must be taken to ensure this be that at the same time or almost simultaneous activation from both sides no mutual interference. With such a memory module Am29705 from The AMD company must do this by external wiring ensure yourself. An example of this is in the associated Data sheet not specified. The broached The problem does not only occur with the example selected here Dual port memories, but also with one Many different types of facilities with two or more independent command input points. A The standard solution to this problem is not known.
Die Erfindung löst das beschriebene Problem durch ein Verfahren nach der Lehre des Hauptanspruchs und eine Einrichtung nach der Lehre des Anspruchs 4. Weitere Ausgestaltungen der Erfindung sind den Unteransprüchen zu entnehmen.The invention solves the problem described by Procedure according to the teaching of the main claim and a Device according to the teaching of claim 4. Further refinements the invention can be found in the subclaims.
Im folgenden wird die Erfindung anhand von Ausführungsbeispielen unter Zuhilfenahme der beiliegenden Zeichnung weiter erläutert.In the following, the invention is based on exemplary embodiments with the help of the attached drawing explained further.
Fig. 1 zeigt als Ausführungsbeispiel das Blockschaltbild eines Halbleiterspeichers mit getrennter Schreib- und Leseeinrichtung. Fig. 1 shows the block diagram shows an exemplary embodiment of a semiconductor memory with separate read and write means.
Fig. 2 zeigt Zeitdiagramme zum Ausführungsbeispiel gemäß Fig. 1. FIG. 2 shows time diagrams for the exemplary embodiment according to FIG. 1.
Fig. 3 zeigt als weiteres Ausführungsbeispiel eine Erweiterung des Ausführungsbeispiels nach Fig. 1. Fig. 3 shows a further embodiment of an extension of the embodiment of FIG. 1.
Fig. 1 zeigt einen Schreib-Lese-Speicher 5, in den von einer ersten Seite A aus Daten DA 0 bis DA 3 eingeschrieben und von einer zweiten Seite B wieder Daten DB 0 bis DB 3 ausgelesen werden können. Von der ersten Seite A aus wird der Schreib-Lese-Speicher 5 über Adressleitungen AA 0 bis AA 3 und von der zweiten Seite B über Adressleitungen AB 0 bis AB 3 adressiert. Die Ausführung eines Einschreib- oder Auslesebefehls wird über eine erste Befehlsleitung exA bzw. eine zweite Befehlsleitung exB veranlaßt. Von der ersten Seite A wird ein erster Takt Clock A und von der zweiten Seite B ein zweiter Takt Clock B zugeführt. Wenn ein Auslesebefehl ausgeführt ist und die Daten DB 0 bis DB 3 abgefragt werden können, dann wird dies durch das Fertigsignal ready angezeigt. Die Ausgabe selbst kann dann durch ein Ausgabesignal oeB veranlaßt werden. Fig. 1 shows a read-write memory 5, 0 is written from a first side A of the data DA to DA and 3 in the DB data can be read out to 0 DB 3 again from a second side B. The read-write memory 5 is addressed from the first side A via address lines AA 0 to AA 3 and from the second side B via address lines AB 0 to AB 3 . The execution of a write-in or read-out command is initiated via a first command line exA or a second command line exB . From the first side A, a first clock Clock A and B from the second side a second clock Clock B is supplied. If a read command has been executed and the data DB 0 to DB 3 can be queried, this is indicated by the ready signal ready . The output itself can then be triggered by an output signal oeB .
Zur Eingabe von Daten in den Schreib-Lese-Speicher 5 werden die einzugebenden Daten DA 0 bis DA 3 an einen Dateneingabespeicher 3 angelegt und die Adresse innerhalb des Schreib-Lese-Speichers 5, an der diese Daten abgelegt werden sollen, wird über die Adressleitung AA 0 bis AA 3 an einen ersten Adresseingabespeicher 10 angelegt. Über die erste Befehlsleitung exA wird dann veranlaßt, daß Daten und Adresse in den Dateneingabespeicher 3 und den ersten Adresseingabespeicher 10 übernommen werden. Die erste Befehlsleitung exA führt weiter zu einer Steuereinrichtung 7, über die das weitere Einschreiben in den Schreib-Lese-Speicher 5 veranlaßt wird. Hierzu wird von der Steuereinrichtung 7 ein Signal an den Schreibeingang W des Schreib-Lese-Speichers 5 gegeben. Das gleiche Signal aktiviert die Ausgänge des Dateneingabespeichers 3 und des ersten Adresseingabespeichers 10 (output enable). An den Dateneingängen D 0 bis D 3 und den Adresseingängen A 0 bis A 3 des Schreib-Lese-Speichers 5 liegen dann Daten und Adresse an und das Einschreiben wird über den Schreibeingang W veranlaßt. In order to enter data into the read / write memory 5 , the data to be entered DA 0 to DA 3 are applied to a data input memory 3 and the address within the read / write memory 5 where these data are to be stored is via the address line AA 0 to AA 3 applied to a first address input memory 10 . The first command line exA then causes data and address to be transferred to the data input memory 3 and the first address input memory 10 . The first command line exA leads to a control device 7 , via which the further writing into the read-write memory 5 is initiated. For this purpose, the control device 7 sends a signal to the write input W of the read-write memory 5 . The same signal activates the outputs of the data input memory 3 and the first address input memory 10 (output enable). Data and address are then present at the data inputs D 0 to D 3 and the address inputs A 0 to A 3 of the read-write memory 5 and the write-in is initiated via the write input W.
Die Ausgabe von Daten auf der zweiten Seite B erfolgt in ähnlicher Weise. Über die Adressleitungen AB 0 bis AB 3 wird eine Adresse an den zweiten Adresseingabespeicher 20 angelegt. Über die zweite Befehlsleitung exB wird das Einschreiben der Adresse in den zweiten Adresseingabespeicher 20 veranlaßt und gleichzeitig die Steuereinrichtung 7 zur Ausführung eines Ausgabebefehls angestoßen. Ein solcher Befehl wird von der Steuereinrichtung 7 an den Leseeingang R des Schreib-Lese-Speichers 5 gegeben. Er wird gleichzeitig zur Aktivierung der Ausgänge des zweiten Adresseingabespeichers 20 und als Übernahmebefehl für einen Datenausgabespeicher 4 verwendet. Die im zweiten Adresseingabespeicher 20 abgespeicherte Adresse wird dann an die Adresseingänge A 0 bis A 3 des Schreib-Lese-Speichers 5 angelegt, an den Dateneingängen D 0 bis D 3, die gleichzeitig Datenausgänge sind, liegen dann die auszugebenden Daten an und werden vom Datenausgabespeicher 4 übernommen. Diese Daten können dann durch ein Datenausgabesignal oeB vom Datenausgabespeicher 4 abgerufen werden. Ob Daten über das Ausgabesignal oeB abgerufen werden können, wird von der Steuereinrichtung 7 über das Fertigsignal ready angezeigt.The data on the second side B is output in a similar manner. An address is applied to the second address input memory 20 via the address lines AB 0 to AB 3 . Via the second command line exB , the address is written into the second address input memory 20 and at the same time the control device 7 is triggered to execute an output command. Such a command is given by the control device 7 to the read input R of the read-write memory 5 . It is used simultaneously to activate the outputs of the second address input memory 20 and as a takeover command for a data output memory 4 . The address stored in the second address input memory 20 is then applied to the address inputs A 0 to A 3 of the read / write memory 5 , and the data to be output are present at the data inputs D 0 to D 3 , which are also data outputs, and are then used by the data output memory 4 taken over. This data can then be called up from the data output memory 4 by a data output signal oeB . The control device 7 uses the ready signal to indicate whether data can be called up via the output signal oeB .
Zur Vereinfachung wurden bei den vorstehenden Ausführungen Verzögerungen innerhalb der Schaltungen vernachlässigt. Dem Fachmann ist aber bekannt, welche Befehle geringfügig verzögert werden müssen, um eine sichere Funktion zu gewährleisten. Dem Fachmann ist auch bekannt, wie er geeignete Verzögerungen erreichen kann. To simplify the above statements Delays within the circuits neglected. However, the person skilled in the art knows which commands are minor have to be delayed to ensure safe functioning. The person skilled in the art is also aware of how suitable ones are Can reach delays.
Die gesamte Anordnung weist also zwei Befehlseingabestellen auf, nämlich auf der ersten Seite A eine erste Befehlseingabestelle 1 mit dem ersten Adresseingabespeicher 10 und der ersten Befehlsleitung exA und auf der zweiten Seite eine zweite Befehlseingabestelle 2 mit dem zweiten Adresseingabespeicher 20 und der zweiten Befehlsleitung exB. Die eingebbaren Befehle sind von der Form: "Schreibe in den durch die angelegte Adresse angegebenen Speicherplatz des Schreib-Lese-Speichers 5 die am Dateneingabespeicher 3 anliegenden Daten ein" bzw. "gib die in dem durch die Adresse angegebenen Speicherplatz des Schreib- Lese-Speichers 5 abgelegten Daten über den Datenausgabespeicher 4 aus".The entire arrangement thus has two command input points, namely on the first side A a first command input point 1 with the first address input memory 10 and the first command line exA and on the second side a second command input point 2 with the second address input memory 20 and the second command line exB . The commands which can be entered are of the form: "Write the data present at the data input memory 3 into the memory location of the read / write memory 5 indicated by the address created" or "enter the data in the memory location of the read / write memory indicated by the address. 5 stored data via the data output memory 4 from ".
Nun soll zunächst die Wirkungsweise der Steuereinrichtung 7 beschrieben werden, bevor dann deren Aufbau anhand der Fig. 1 beschrieben wird. Fig. 2a zeigt Zeitdiagramme für eine von der ersten Seite A aus veranlaßte Befehlsausführung. Fig. 2b zeigt Zeitdiagramme für eine von der zweiten Seite B aus verursachte Befehlsausführung unter der Voraussetzung, daß von der ersten Seite A aus bereits die Ausführung eines Befehls angestoßen wurde. Fig. 2c zeigt ebenfalls Zeitdiagramme für eine von der zweiten Seite B aus veranlaßte Befehlsausführung, jedoch unter der Voraussetzung, daß zum Zeitpunkt der Befehlseingabe der zweiten Seite B auf der ersten Seite A kein Befehl ausgeführt wird. Wirkungsweise und Aufbau der Steuereinrichtung 7 sind unabhängig vom hier speziell vorliegenden Ausführungsbeispiel eines Speichers mit getrennter Schreib- und Leseeinrichtung.The mode of operation of the control device 7 is now to be described first, before its structure is then described with reference to FIG. 1. Figure 2a shows timing diagrams for command execution initiated from first page A. FIG. 2b shows timing diagrams for a second of the side B from caused instruction execution under the condition that a command has been initiated from the first side A of the embodiment already. FIG. 2c also shows time diagrams for an instruction execution initiated from the second side B , but on the condition that no instruction is executed on the first side A at the time of the instruction input of the second side B. The mode of operation and structure of the control device 7 are independent of the exemplary embodiment of a memory with a separate write and read device.
Die erste Zeile der Fig. 2a zeigt das Signal auf der ersten Befehlsleitung exA. Zum Zeitpunkt t 10 ist ein Befehl eingegeben, der eine Einschreibeoperation auslöst. Die zweite Zeile der Fig. 2a zeigt das Signal am Schreibeingang W. Zum Zeitpunkt t 11 wird eine Einschreiboperation ausgelöst, sie ist zum Zeitpunkt t 12 abgeschlossen. Der das Einschreiben zum Zeitpunkt t 11 auslösende Impuls am Schreibeingang W muß gegenüber dem Ende des Impulses auf der Befehlsleitung exA zum Zeitpunkt t 10 so weit verzögert sein, daß in der Zwischenzeit (t 11-t 10) ein etwa noch nicht abgearbeiteter Lesebefehl, der von der zweiten Seite B aus angestoßen wurde, mit Sicherheit abgearbeitet werden kann. Die erforderliche Mindestverzögerungszeit gibt sich zwangsläufig aus dem Befehlsablauf auf der zweiten Seite B. Dies wird weiter unten noch näher erläutert werden. Für den Fall, daß mit unterschiedlich langen Befehlsausführungszeiten auf der zweiten Seite B zu rechnen ist, ist von der längsten möglichen Zeit als Mindestverzögerungszeit auszugehen. In der Praxis wird die tatsächliche Verzögerungszeit größer sein als die erforderliche Mindestverzögerungszeit. Die dritte Zeile der Fig. 2a zeigt ein Signal busy a, das die Zeit angibt, während der auf der ersten Seite A ein Befehl abgearbeitet wird. Es ist die Zeit von t 10 bis t 12.The first line of FIG. 2a shows the signal on the first command line exA . At time t 10 , a command is entered that triggers a write-in operation. The second line of FIG. 2a shows the signal at the write input W. A write-in operation is triggered at time t 11 and is completed at time t 12 . The pulse at write input W which triggers writing at time t 11 must be delayed so far compared to the end of the pulse on command line exA at time t 10 that in the meantime ( t 11 - t 10 ) an approximately unprocessed read command which was initiated from the second side B , can be processed with certainty. The required minimum delay time inevitably results from the sequence of commands on the second side B. This will be explained in more detail below. In the event that command execution times of different lengths on the second side B are to be expected, the longest possible time is to be assumed as the minimum delay time. In practice, the actual delay time will be greater than the minimum delay time required. The third row of Fig. 2a shows a BUSY signal a, which indicates the time during which will be processed on the first side A is a command. It is the time from t 10 to t 12 .
Die erste Zeile von Fig. 2b zeigt das Signal auf der zweiten Befehlsleitung exB. Zum Zeitpunkt t 20 ist der Befehl eingegeben, daß auf der zweiten Seite B ausgelesen werden soll. Der Zeitpunkt t 20 liegt in diesem Beispiel kurz nach t 10. Es ist also auf der ersten Seite A bereits ein Befehl eingegeben, der aber noch nicht abgearbeitet ist. Die Ausführung des auf der ersten Seite A eingegebenen Befehls wird zwar noch verzögert, die Verzögerung reicht aber nicht mit Sicherheit aus, um zwischenzeitlich noch den auf der zweiten Seite B eingegebenen Befehl abzuarbeiten. Dieser wird also so lange verzögert, bis der auf der ersten Seite A eingegebene Befehl mit Sicherheit abgearbeitet ist. Das Signal am Leseeingang R des Schreib-Lese-Speichers 5 hat dann den in der zweiten Zeile von Fig. 2b gezeigten Verlauf, das Auslesen erfolgt in der Zeit von t 23 bis t 24. Die zweite Seite B ist damit in der Zeit von t 20 bis t 24 aktiv, wie dies die dritte Zeile von Fig. 2b zeigt (busy B). Um diesen Ablauf zu erreichen wird zunächst, während der Zeit t 20 bis t 21, ein Test durchgeführt (vierte Zeile von Fig. 2b). Durch diesen Test wird das Signal busy A überprüft. In Abhängigkeit vom Ergebnis dieses Tests wird eines von zwei Signalen, R 2 oder R 3 (fünfte und sechste Zeile in Fig. 2b) als Lesebefehl an den Leseeingang R weitergegeben. Das Signal R 2 enthält einen Impuls, der zum Zeitpunkt t 21 mit dem Ende des Tests beginnt und zum Zeitpunkt t 22 endet. Die Zeit zwischen t 21 und t 22 ist so bemessen, daß während dieser Zeit ein vollständiger Lesevorgang erfolgen kann. Daraus ergibt sich dann die Mindestverzögerungszeit auf der ersten Seite A. Im Beispiel ist t 22-t 20 = t 11-t 10.Das im Fall der Fig. 2b als Lesebefehl ausgewählte Signal R 3 enthält einen Impuls, der zum Zeitpunkt t 23 beginnt und zum Zeitpunkt t 24 endet, wobei t 24-t 23 = t 22-t 21 ist. Der Anfang des Impulses t 23 muß in jedem Fall so spät liegen, daß mit Sicherheit jeder zum Zeitpunkt t 20 bereits eingeleitete Schreibvorgang wieder beendet ist. Es muß also t 23-t 20 mindestens so lang sein wie t 12-t 10. In der letzten Zeile von Fig. 2b ist noch ein Clear-Signal gezeigt, mit dessen Hilfe zum Zeitpunkt t 24 die Umschaltung zwischen R 2 und R 3 wieder in ihre Ruhelage gebracht werden kann.The first line of Fig. 2b shows the signal on the second command line exB . At time t 20 , the command is entered that B is to be read out on the second side. In this example, the time t 20 is shortly after t 10 . A command has therefore already been entered on the first page A , but has not yet been processed. The execution of the command entered on the first side A is still delayed, but the delay is certainly not sufficient to process the command entered on the second side B in the meantime. This is therefore delayed until the command entered on the first page A is processed with certainty. The signal at the read input R of the read-write memory 5 then has the course shown in the second line of FIG. 2b, the reading takes place in the time from t 23 to t 24 . The second side B is thus active in the time from t 20 to t 24 , as the third line of FIG. 2b shows (busy B ). In order to achieve this sequence, a test is first carried out during the time t 20 to t 21 (fourth line of FIG. 2 b). This test checks the busy A signal. Depending on the result of this test, one of two signals, R 2 or R 3 (fifth and sixth lines in FIG. 2b) is passed on to the read input R as a read command. The signal R 2 contains a pulse that begins at time t 21 with the end of the test and ends at time t 22 . The time between t 21 and t 22 is such that a complete reading process can take place during this time. This then results in the minimum delay time on the first side A. In the example t 22 - t 20 = t 11 - t 10 .The in the case of Figure 2b is selected as a reading command signal R 3 contains a pulse at time t 23 starts and at the time t 24 terminates, where t is 24 -. T 23 = t 22 - t 21 . The start of the pulse t 23 must in any case be so late that it is certain that every write operation already initiated at time t 20 is ended again. So t 23 - t 20 must be at least as long as t 12 - t 10 . In the last line of FIG. 2b, a clear signal is also shown, with the aid of which the switchover between R 2 and R 3 can be brought back to its rest position at time t 24 .
Fig. 2c zeigt die den Signalen der Fig. 2b entsprechenden Signale für den Fall, daß der Zeitpunkt t 20 vor t 10 liegt, daß also die erste Seite A gerade nicht aktiv ist. In diesem Fall fällt das Signal am Leseeingang R nicht mit R 3, sondern mit R 2 zusammen. Der Lesevorgang ist damit abgeschlossen, bevor ein Schreibvorgang beginnen kann. FIG. 2c shows the signals corresponding to the signals of FIG. 2b in the event that the time t 20 is before t 10 , that is to say that the first side A is currently not active. In this case, the signal at the reading input R does not coincide with R 3 , but with R 2 . The reading process is now complete before a writing process can begin.
Auch hier treten selbstverständlich geringfügige Laufzeitunterschiede auf, die vom Fachmann in bekannter Weise zu berücksichtigen sind.Here, too, there are of course slight differences in runtime on by the expert in a known manner are taken into account.
Eine Schaltung, mit der der anhand der Fig. 2 beschriebene Ablauf gesteuert werden kann, kann prinzipiell auf verschiedene Arten aufgebaut sein. Beispielsweise können die einzelnen Verzögerungszeiten, genaugenommen deren Enden, für jeden auszuführenden Befehl neu bestimmt werden, indem jeweils geprüft wird, ob noch ein Grund für die Verzögerung vorliegt und indem bei Wegfall dieses Grunds die Verzögerung beendet wird. So kann etwa der an den Schreibeingang W zu gebenden Schreibimpuls dann beginnen (t 11), wenn seit dem Ausführungsbefehl an exA (t 10) die Zeit verstrichen ist, die zur Ausführung eines Tests erforderlich ist (t 21-t 20) und anschließend festgestellt wird, daß am Leseeingang R kein Impuls anliegt.A circuit with which the sequence described with reference to FIG. 2 can be controlled can in principle be constructed in various ways. For example, the individual delay times, strictly speaking their ends, can be redetermined for each command to be executed by checking in each case whether there is still a reason for the delay and by terminating the delay if this reason ceases to exist. For example, the write pulse to be sent to the write input W can begin ( t 11 ) when the time required to execute a test ( t 21 - t 20 ) has elapsed since the execution command to exA ( t 10 ) and then determined is that there is no pulse at the reading input R.
Beim Ausführungsbeispiel nach Fig. 1 arbeitet die Steuereinrichtung 7 dagegen so, daß die einzelnen Verzögerungen fest vorgegebene Zeiten sind. Diese Zeiten werden durch die von außen zugeführten Takte Clock A und Clock B bestimmt. Sie könnten aber auch durch Monoflops bestimmt werden. In the exemplary embodiment according to FIG. 1, on the other hand, the control device 7 operates in such a way that the individual delays are predetermined times. These times are determined by the clocks Clock A and Clock B supplied from the outside. But they could also be determined by monoflops.
Die Steuereinrichtung 7 nach Fig. 1 enthält auf jeder Seite einen Zähler 71 A und 71 B, einen Decoder 72 A und 72 B und ein UND-Gatter 73 A und 73 B. Der Zähler 71 A/B wird durch einen Befehl auf der Befehlsleitung exA/B zurückgesetzt und durch den Takt Clock A/B hochgezählt. Aus dem Zählerstand werden durch den Decoder 72 A/B die benötigten Signale entsprechend Fig. 2 abgeleitet. Am Ende wird der Takt Clock A/B durch das UND-Gatter 73 A/B unterbrochen und der Zähler 71 A/B bleibt stehen, bis er wieder zurückgesetzt wird.The controller 7 of FIG. 1 includes on each side a counter 71 A and 71 B, a decoder 72 A and 72 B, and an AND gate 73 A and 73 B. The counter 71 A / B is reset by a command on the command line exA / B and counted up by the clock clock A / B. The required signals according to FIG. 2 are derived from the counter reading by the decoder 72 A / B. At the end, clock A / B is interrupted by AND gate 73 A / B and counter 71 A / B remains until it is reset.
Die Verknüpfung der Vorgänge auf der ersten Seite A mit denen auf der zweiten Seite B erfolgt durch eine Prüfeinrichtung 6. Die Prüfeinrichtung 6 besteht aus einem D-Flip-Flop 61 und einem UND-Gatter 62. Durch das UND- Gatter 62 wird während der durch das Signal Test vorgegebenen Prüfzeit geprüft, ob die erste Seite A aktiv ist (busy A). Das Ergebnis dieser Prüfung wird im D- Flip-Flop 61 festgehalten, bis dieses durch das Signal Clear zurückgesetzt wird. Durch einen weiteren aus zwei UND-Gattern 75 und 76 und einem ODER-Gatter 74 bestehenden Decoder wird in Abhängigkeit vom Inhalt des D-Flip- Flops 61 eines der beiden Signale R 2 und R 3 an den Leseeingang R durchgeschaltet.The processes on the first side A are linked to those on the second side B by a test device 6 . The test device 6 consists of a D flip-flop 61 and an AND gate 62 . The AND gate 62 checks whether the first side A is active (busy A ) during the test time specified by the signal test. The result of this test is recorded in the D flip-flop 61 until it is reset by the signal Clear. Another decoder consisting of two AND gates 75 and 76 and an OR gate 74 switches one of the two signals R 2 and R 3 to the read input R depending on the content of the D flip-flop 61 .
Eine Ergänzung des Ausführungsbeispiels der Fig. 1 wird nun anhand der Fig. 3 beschrieben.A supplement to the embodiment of FIG. 1 will now be described with reference to FIG. 3.
Bei diesem Ausführungsbeispiel kann in den Schreib-Lese- Speicher 5 von beiden Seiten aus eingeschrieben und nach beiden Seiten hin ausgelesen werden. Hierfür ist ein geringfügig abgewandelter Schreib-Lese-Speicher 5′ vorhanden, der keinen separaten Leseeingang, sondern einen kombinierten Schreib-Lese-Eingang W/ aufweist. Die Datenausschlüsse sind über Datenleitungen Data A mit der ersten Seite A und über Datenleitungen Data B mit der zweiten Seite B verbunden. In gleicher Weise sind die Adreßeingänge über Adreßleitungen Adress A/B angeschlossen. Das für den Schreib-Lese-Eingang W/ bestimmte Signal wird in einem ODER-Gatter 51 aus zwei von den beiden Seiten A/B kommenden Schreibsignalen write A/B gewonnen.In this embodiment, the read / write Storage5 inscribed from both sides and after be read out on both sides. For this is an slightly modified read / write memory5 ′ available, which is not a separate reading entrance, but one combined read / write inputW/ having. The Data exclusions are data linesA with the first pageA and over data lines dataB with the second pageB connected. In the same way they are Address inputs via address lines addressA/B connected. That for the read / write inputW/ certain signal is in an OR gate51 from two of the two pagesA/B upcoming write signals writeA/B won.
Auf beiden Seiten A/B sind Befehlseingabespeicher 10′/20′ vorhanden, die außer den Adressen auch noch das Schreibsignal write A/B zwischenspeichern. Das Einschreiben in den Befehlseingabespeicher 10′/20′ wird, wie auch das Rücksetzen des Zählers 71 A/B durch ein Signal veranlaßt, das in einem ODER-Glied 11 A/B aus getrennten Schreib- und Lesesignalen write A/B und read A/B gewonnen wird. Durch das Schreibsignal write A/B wird gleichzeitig veranlaßt, daß auf der äußeren Datenleitung Data A/B anstehende Daten in Dateneingabespeicher 31/41 eingeschrieben werden. Für die Ausgabe von Daten sind Datenausgabespeicher 32/42 vorhanden.On both sides A / B there are command input memories 10 ' / 20' which, in addition to the addresses, also temporarily store the write signal write A / B. The writing in the command input memory 10 ' / 20' , as well as the reset of the counter 71 A / B is caused by a signal which in an OR gate 11 A / B from separate write and read signals write A / B and read A / B is won. By the write signal WRITE A / B is caused at the same time that pending on the external data line Data A / B data is written into data memory 31, input / 41st Data output memories 32/42 are available for the output of data.
Die von der Steuereinrichtung 7 kommenden Signale, die im Beispiel nach Fig. 1 direkt zum Schreibeingang W und zum Leseeingang R führten, müssen hier mit dem gespeicherten Schreibsignal write A/B verknüpft werden, um die Ausgabe von Daten aus dem Dateneingabespeicher 31/41 an den Schreib-Lese-Speicher 5′ oder die Übernahme der vom Schreib-Lese-Speicher 5′ ausgegebenen Daten in den Datenausgabespeicher 32/42 zu bewirken. Hierzu sind UND-Gatter 12 A/B und mit je einem invertierenden Eingang versehene UND-Gatter 13 A/B vorhanden. The data coming from the control device 7 signals in the example of FIG. 1, directly to the write input W and led to the read input R, must here be linked to the stored write signal WRITE A / B to the output data from said data input memory 31/41 on 32 / to effect the read-write memory 5 'or the acquisition of the read-write memory 5' data outputted in the data output storage 42nd For this purpose there are AND gates 12 A / B and AND gates 13 A / B each provided with an inverting input.
Im übrigen, insbesondere was die Steuereinrichtung 7 betrifft, arbeitet die Schaltung nach Fig. 3 wie die Schaltung nach Fig. 1.Otherwise, in particular as far as the control device 7 is concerned, the circuit according to FIG. 3 operates like the circuit according to FIG. 1.
Das zugrundeliegende Prinzip ist, wie leicht zu erkennen ist, auch auf gänzlich andere Einrichtungen mit zwei voneinander unabhängigen Befehlseingabestellen anwendbar, selbst auf die Steuerung nichtelektrischer Einrichtungen.The underlying principle is how easy to see is, also on completely different facilities with two from each other independent command entry points applicable, even on the control of non-electrical devices.
Auch ist leicht ersichtlich, daß das Prinzip ohne weiteres durch Kaskadierung auf mehr als zwei Befehlseingabestellen erweiterbar ist.It is also easy to see that the principle is straightforward by cascading to more than two command entry points is expandable.
-
Bezugszeichenliste:
1 erste Befehlseingabestelle
2 zweite Befehlseingabestelle
3 Dateneingabespeicher
4 Datenausgabespeicher
5,5′ Schreib-Lese-Speicher
6 Prüfeinrichtung
7 Steuereinrichtung
A erste Seite
B zweite Seite
DA 0...DA 3 Daten
DB 0...DB 3 Daten
AA 0...AA 3 Adreßleitungen
AB 0...AB 3 Adreßleitungen
exA erste Befehlsleitung (execute A)
exB zweite Befehlsleitung
Clock A erster Takt
Clock B zweiter Takt
ready Fertigsignal
oeB Ausgabesignal (output enable B)
10 erster Adreßeingabespeicher
W Schreibeingang
D 0...D 3 Dateneingänge/Datenausgänge
A 0...A 3 Adreßeingänge
20 zweiter Adreßeingabespeicher
R Leseeingang
71 A,B Zähler
72 A,B Decoder
73 A,B UND-Gatter
Data A,B Datenleitungen
Adress A,B Adreßleitungen
W/ Schreib-Lese-Eingang
51 ODER-Gatter
write A/B Schreibsignal
10′ Befehlseingabespeicher
20′ Befehlseingabespeicher
11 A,B ODER-Glied
31,41 Dateneingabespeicher
32,42 Datenausgabespeicher
12 A,B UND-Gatter
61 D-Flip-Flop
62 UND-Gatter
75,75 UND-Gatter
74 ODER-GatterReference symbol list: 1first command entry point
2ndsecond command entry point
3rdData entry memory
4thData output memory
5.5 ′Read-write memory
6Test facility
7Control device
Afirst page
Bsecond page
THERE 0...THERE 3rdData
DB 0...DB 3rdData
AA 0...AA 3rdAddress lines
FROM 0...FROM 3rdAddress lines
exAfirst command line (executeA)
exBsecond command line
Clock Afirst bar
Clock Bsecond bar
readyReady signal
oeBOutput signal (output enableB)
10thfirst address input memory
WWrite input
D 0...D 3rdData inputs / data outputs
A 0...A 3rdAddress inputs
20thsecond address input memory
RReading input
71 FROMcounter
72 FROMdecoder
73 FROMAND gate
Data A, BData lines
Address A, BAddress lines
W/ Read / write input
51OR gate
writeA/BWrite signal
10 ′Command input memory
20 ′Command input memory
11 FROMOR gate
31.41Data entry memory
32.42Data output memory
12 FROMAND gate
61D flip-flop
62AND gate
75.75AND gate
74OR gate
Claims (8)
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19853537115 DE3537115A1 (en) | 1985-10-18 | 1985-10-18 | METHOD FOR OPERATING A DEVICE WITH TWO INDEPENDENT COMMAND INPUTS AND DEVICE WORKING ACCORDING TO THIS METHOD |
GB08624134A GB2181872A (en) | 1985-10-18 | 1986-10-08 | Dual-port memory |
ES8602651A ES2003888A6 (en) | 1985-10-18 | 1986-10-17 | Dual-port memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19853537115 DE3537115A1 (en) | 1985-10-18 | 1985-10-18 | METHOD FOR OPERATING A DEVICE WITH TWO INDEPENDENT COMMAND INPUTS AND DEVICE WORKING ACCORDING TO THIS METHOD |
Publications (1)
Publication Number | Publication Date |
---|---|
DE3537115A1 true DE3537115A1 (en) | 1987-05-27 |
Family
ID=6283868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19853537115 Withdrawn DE3537115A1 (en) | 1985-10-18 | 1985-10-18 | METHOD FOR OPERATING A DEVICE WITH TWO INDEPENDENT COMMAND INPUTS AND DEVICE WORKING ACCORDING TO THIS METHOD |
Country Status (3)
Country | Link |
---|---|
DE (1) | DE3537115A1 (en) |
ES (1) | ES2003888A6 (en) |
GB (1) | GB2181872A (en) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3374465A (en) * | 1965-03-19 | 1968-03-19 | Hughes Aircraft Co | Multiprocessor system having floating executive control |
US4099243A (en) * | 1977-01-18 | 1978-07-04 | Honeywell Information Systems Inc. | Memory block protection apparatus |
JPS5443644A (en) * | 1977-09-13 | 1979-04-06 | Fujitsu Ltd | Processing system for deadlock automatic release at exclusive control time |
US4169284A (en) * | 1978-03-07 | 1979-09-25 | International Business Machines Corporation | Cache control for concurrent access |
GB2037039B (en) * | 1978-12-11 | 1983-08-17 | Honeywell Inf Systems | Cache memory system |
US4390943A (en) * | 1979-12-26 | 1983-06-28 | Honeywell Information Systems Inc. | Interface apparatus for data transfer through an input/output multiplexer from plural CPU subsystems to peripheral subsystems |
US4574350A (en) * | 1982-05-19 | 1986-03-04 | At&T Bell Laboratories | Shared resource locking apparatus |
GB2131581B (en) * | 1982-11-20 | 1986-11-19 | Int Computers Ltd | Dual processor arrangement |
-
1985
- 1985-10-18 DE DE19853537115 patent/DE3537115A1/en not_active Withdrawn
-
1986
- 1986-10-08 GB GB08624134A patent/GB2181872A/en not_active Withdrawn
- 1986-10-17 ES ES8602651A patent/ES2003888A6/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
GB2181872A (en) | 1987-04-29 |
GB8624134D0 (en) | 1986-11-12 |
ES2003888A6 (en) | 1988-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1097460B1 (en) | Integrated circuit comprising a self-test device for executing a self-test of the integrated circuit | |
DE4111483C2 (en) | Dual port memory | |
DE2311034C2 (en) | Method for testing a semiconductor chip containing integrated logic combination and memory elements | |
DE3115541C2 (en) | ||
DE3687787T2 (en) | MEMORY ACCESS CONTROL CIRCUIT. | |
DE19860650B4 (en) | A synchronous semiconductor memory device having a chip set memory control device with data masking function | |
EP0974977A2 (en) | Integrated memory | |
DE2340547B2 (en) | CIRCUIT ARRANGEMENT FOR TESTING LOGICAL CIRCUITS | |
EP0013737A1 (en) | Multilevel storage hierarchy for a data processing system | |
DE19614237C1 (en) | Communication system with a master station and at least one slave station | |
DE10215362A1 (en) | Integrated memory with a memory cell array with several memory banks and circuit arrangement with an integrated memory | |
EP0036579A1 (en) | Method for refreshing information stored in a dynamic MOS-memory | |
DE2719291A1 (en) | DATA STORAGE SYSTEM | |
DE3850212T2 (en) | Multiple CPU system with shared memory. | |
DE2242279C3 (en) | Circuit arrangement for determining errors in a memory unit of a program-controlled data exchange system | |
EP0064574A2 (en) | Arrangement for reading unambiguous information from a sequential digital system by means of mutual asynchronous control signals for relaying the sequential logic system and for receiving the information | |
DE2952056B1 (en) | Write and read circuit for a memory with random access | |
DE3537115A1 (en) | METHOD FOR OPERATING A DEVICE WITH TWO INDEPENDENT COMMAND INPUTS AND DEVICE WORKING ACCORDING TO THIS METHOD | |
DE19501227A1 (en) | DRAM refreshing control circuit | |
DE2917822A1 (en) | CIRCUIT ARRANGEMENT FOR TWO-WAY TRANSMISSION OF SIGNALS | |
DE3021306C2 (en) | ||
DE4413823A1 (en) | Data block access mechanism for memory chip devices | |
DE2649932A1 (en) | CENTRAL CONTROL UNIT FOR PERIPHERAL UNITS OF A DATA PROCESSING SYSTEM | |
EP1085387A2 (en) | Memory controller for performing switching to access storage cells | |
DE1474041C3 (en) | Arrangement for sorting information bit groups recorded in random order |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |