DE3650165T2 - Bus state control circuit. - Google Patents

Bus state control circuit.

Info

Publication number
DE3650165T2
DE3650165T2 DE3650165T DE3650165T DE3650165T2 DE 3650165 T2 DE3650165 T2 DE 3650165T2 DE 3650165 T DE3650165 T DE 3650165T DE 3650165 T DE3650165 T DE 3650165T DE 3650165 T2 DE3650165 T2 DE 3650165T2
Authority
DE
Germany
Prior art keywords
signal
access
input
output
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE3650165T
Other languages
German (de)
Other versions
DE3650165D1 (en
Inventor
Shinya Kimura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Application granted granted Critical
Publication of DE3650165D1 publication Critical patent/DE3650165D1/en
Publication of DE3650165T2 publication Critical patent/DE3650165T2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Microcomputers (AREA)

Description

Die Erfindung betrifft eine Buszustands-Steuerschaltung eines Mikroprozessors und insbesondere eine Buszustands-Steuerschaltung, die innerhalb eines Mikroprozessors vorgesehen ist, an den ein Eingangs-Ausgangs-Steuer (periphere Steuerung)-IC durch einen Bus gekoppelt ist.The invention relates to a bus state control circuit of a microprocessor, and more particularly to a bus state control circuit provided within a microprocessor to which an input-output control (peripheral control) IC is coupled through a bus.

Der Zugriff eines Mikroprozessors auf einen Eingangs-Ausgangs-Steuer-IC wie einem Kommunikationssteuer-IC und einem Magnetplatten-Steuer-IC wurde bislang durch die Ausfughrung von Eingabe-Ausgabe-Befehlen durchgeführt. Normalerweise ergibt sich kein Problem bei der "Erholungszeit" des Eingangs-Ausgangs-Steuer-ICs, d.h. der Zeitspanne zwischen dem Ende eines Zugriffs und dem Beginn eines folgenden Zugriffs, selbst wenn auf denselben Eingangs-Ausgangs-Steuer- IC aufeinanderfolgend entsprechend vorgegebenen Befehlen zugegriffen wird, da die Betriebsfrequenz des Mikroprozessors klein ist und ein Befehlsholvorgang zum Finden des nächsten Befehls immer zwischen Eingangs-Ausgangs-Zugriffen eingeht.Access by a microprocessor to an input-output control IC such as a communication control IC and a magnetic disk control IC has heretofore been performed by executing input-output instructions. Normally, even if the same input-output control IC is accessed consecutively according to predetermined instructions, there is no problem with the "recovery time" of the input-output control IC, i.e., the time period between the end of one access and the start of a subsequent access, because the operating frequency of the microprocessor is small and an instruction fetch operation for finding the next instruction always occurs between input-output accesses.

Fig. 1 ist ein Zeitablaufdiagrarnm, das sich auf einen externen Zugriff in dem Fall bezieht, wenn ein Mikroprozessor aufeinanderfolgend Eingangs-Ausgangs-Befehle in bekannter Weise ausführt. Ein Tastsignal DS wird zum Lesen und Schreiben von Daten verwendet, und es gibt die Zeit an, wann ein Zugriff möglich ist. Die "Erholungszeit" wird als die Zeitspanne zwischen dem Zeitpunkt angesehen, in dem das Tastsignal inaktiv wird, und dem Zeitpunkt, wenn es erneut für den Zugriff auf den neuen Eingangs-Ausgangs-Steuer-IC aktiv wird. Wie in Fig. 1 dargestellt ist, wird eine lange Erholungszeit erhalten, selbst wenn derselbe Eingangs-Ausgangs-Steuer-IC aufeinanderfolgend angesprochen wird, da der Befehlsholzyklus zwischen die aufeinanderfolgenden Eingangs-Ausgangs-Zugriffszyklen eingefügt ist.Fig. 1 is a timing diagram relating to external access in the case where a microprocessor executes consecutive input-output instructions in a known manner. A key signal DS is used to read and write data, and it indicates the time when access is possible. The "recovery time" is considered to be the time period between the time when the key signal becomes inactive and the time when it is again available for access to the new input-output control IC. becomes active. As shown in Fig. 1, a long recovery time is obtained even when the same input-output control IC is accessed consecutively because the instruction fetch cycle is inserted between the consecutive input-output access cycles.

Zusammen mit Verbesserungen hinsichtlich der Integrationskapazität der LSI nähern sich die Fähigkeiten und Funktionen von Mikroprozessoren punktuell an die der Mikrocomputer und der mittelgroßen Allzweckcomputer. Verbesserungen der Techniken zur Herstellung von Mikroelementen und Einfügung einer Pipelinestruktur in der Mikroprozessorarchitektur haben zu diesem Fortschritt beigetragen.Together with improvements in the integration capacity of LSI, the capabilities and functions of microprocessors are in some places approaching those of microcomputers and medium-sized general-purpose computers. Improvements in microelement manufacturing techniques and the introduction of a pipeline structure in the microprocessor architecture have contributed to this progress.

Bei der Verbesserung der Mikroprozessorarchitektur wurde das Verhältnis des externen Zugriffs, d.h. das sog. "Buszugriffsverhältnis" (bus access ratio), auf einen sehr wesentlichen Grad angehoben. Mit anderen Worten können Prozesse wie das Befehlsholen, das Befehlsdekodieren, der Operandenzugriff und Befehlsausführung, die früher seriell durchgeführt wurden, nunmehr parallel aufgrund der Pipelinestruktur der Mikroprozessorarchitektur durchgeführt werden. Durch diesselbe Maßnahme wie beim Operandenzugriff, wird das Lesen eines Operanden, der für einen sich an einen gegebenen Befehl anschließenden Befehl erforderlich ist, der gerade ausgeführt wird, und das Schreiben eines Operanden, der in einem Befehl enthalten ist, der bereits beendet ist, aufeinanderfolgend erforderlich.With the improvement of microprocessor architecture, the external access ratio, i.e., the so-called "bus access ratio", has been raised to a very substantial level. In other words, processes such as instruction fetch, instruction decoding, operand access and instruction execution, which were previously performed serially, can now be performed in parallel due to the pipeline structure of the microprocessor architecture. By the same measure as operand access, reading an operand required for an instruction subsequent to a given instruction that is currently being executed and writing an operand contained in an instruction that has already been completed are required sequentially.

Hinsichtlich der Eingabe und Ausgabevorgänge werden diese sukzessiv für denselben Eingabe-Ausgabe-Steuer-IC durchgeführt, wobei die Eingage-Ausgabe-Zugriffszyklen manchmal aufeinanderfolgend, ohne Einfügung des Befehlsholzyklus, auftreten können. Dies verursacht ein Problem dadurch, daß die Erholungszeit nicht sichergestellt werden kann, da die Zeitspanne zwischen dem Ende eines Zugriffs und dem Beginn eines folgenden Zugriffs kurz wird.Regarding the input and output operations, these are performed successively for the same input-output control IC, and the input-output access cycles may sometimes occur consecutively without inserting the instruction fetch cycle. This causes a problem in that the recovery time cannot be ensured because the The time period between the end of one access and the beginning of a subsequent access becomes short.

Ein System, in dem Software derart vorbereitet ist, daß Eingabe-Ausgabe-Befehle nicht aufeinanderfolgend durchgeführt werden, ist ein Weg zur Lösung des vorgenannten Problems. Ein solches System muß jedoch Faktoren in Bezug auf Hardware, beispielsweise die Pipelinestruktur eines gegebenen Mikroprozessors, den Grad der Parallelausführung von Befehlen, die Taktfrequenz und die Erholungszeit für den Eingangs-Ausgangs-IC berücksichtigen. Folglich wird einem Softwareentwickler eine deutliche Belastung auferlegt. Selbst wenn eine Programmlösung umgesetzt ist, kann desweiteren dasselbe Programm nicht in einem anderen System arbeiten, das unterschiedliche Faktoren bezüglich der Hardware aufweist. Selbst wenn die Software eine ausreichende Zeit zwischen Eingangs-Ausgangs-Befehlen erlaubt, so daß sie in verschiedenen Systemen arbeiten kann, wird sie derartige nicht effektive Systeme betreiben, die nicht soviel Zeit zur Erholung brauchen.A system in which software is prepared such that input-output instructions are not executed consecutively is one way of solving the above problem. However, such a system must take into account factors related to hardware, such as the pipeline structure of a given microprocessor, the degree of parallel execution of instructions, the clock frequency and the recovery time for the input-output IC. Consequently, a significant burden is imposed on a software developer. Furthermore, even if a program solution is implemented, the same program cannot work in another system having different factors related to hardware. Even if the software allows sufficient time between input-output instructions so that it can work in different systems, it will operate such inefficient systems which do not require so much time for recovery.

Wie oben beschrieben, bestehen mehrere Nachteile in dem System, bei dem die Erholungszeit durch Software sichergestellt ist.As described above, there are several disadvantages in the system where the recovery time is ensured by software.

Eine andere Lösung kann in einem System gefunden werden, bei dem Hardware eine feste Zeitspanne zur Sicherstellung der Erholungszeit vorsieht, die immer zwischen Zugriffen für Eingabe- und Ausgabe eingebracht ist. Dieses System hat einen Nachteil darin, daß ein unnötiger Zeitanteil gebraucht wird, wenn Zugriffe für Eingabe und Ausgabe nicht aufeinanderfolgend zum selben IC durchgeführt werden. Dies führt zu einer Beschränkung hinsichtlich der Systemleistungsfähigkeit.Another solution can be found in a system where hardware provides a fixed amount of time to ensure recovery time that is always inserted between input and output accesses. This system has a disadvantage in that an unnecessary amount of time is consumed when input and output accesses are not performed consecutively to the same IC. This leads to a limitation in terms of system performance.

E.D.N. Electrical Design News, Ausgabe 30, Nr. 7, April 1985, Seiten 274-275, Boston, Mass., Vereinigte Staaten von Amerika; I.R. JOHNS: "Interface circuittry tames Z8530", beschreibt einen monostabilen Zeitgeber zur Sicherstellung der Minimal zeit zwischen aufeinanderfolgenden Buszugriffen von einer CPU auf eine I/O-Vorrichtung. Das bedeutet, daß der in dieser Druckschrift beschriebene Zeitgeber eine Schnittstellenschaltung ist, und eine Buszustands-Steuerschaltung ist nicht offenbart.E.D.N. Electrical Design News, Volume 30, No. 7, April 1985, pages 274-275, Boston, Mass., United States of America; I.R. JOHNS: "Interface circuittry tames Z8530", describes a monostable timer for ensuring the minimum time between successive bus accesses from a CPU to an I/O device. This means that the timer described in this publication is an interface circuit and a bus state control circuit is not disclosed.

Eine Aufgabe der Erfindung liegt in der Schaffung einer Buszustands-Steuerschaltung, die in der Lage ist, die Erholungszeit des Eingangs-Ausgangs-Steuer-IC sicherzustellen.An object of the invention is to provide a bus state control circuit capable of ensuring the recovery time of the input-output control IC.

Eine weitere Aufgabe der Erfindung liegt in der Schaffung einer Buszustands-Steuerschaltung, die ohne Berücksichtigung der Hardware wie Pipelinestruktur, den Grad der Parallelausführung von Befehlen, Taktfrequenz und Erholungszeit des Eingangs-Ausgangs-Steuer-ICs betreibbar ist.Another object of the invention is to provide a bus state control circuit that can be operated without considering the hardware such as pipeline structure, the degree of parallel execution of instructions, clock frequency and recovery time of the input-output control IC.

Eine weitere Aufgabe der Erfindung liegt in der Schaffung einer Buszustands-Steuerschaltung, die in der Lage ist, die Belastung eines Softwareentwicklers zu vermindern.Another object of the invention is to provide a bus state control circuit capable of reducing the burden of a software developer.

Eine weitere Aufgabe der Erfindung liegt in der Schaffung einer Buszustands-Steuerschaltung, die effektiv arbeitet, selbst wenn sie mit verschiedenen Hardware-Elementen aufgebaut ist.Another object of the invention is to provide a bus state control circuit that operates effectively even when constructed with different hardware elements.

Noch eine weitere Aufgabe der Erfindung liegt in der Schaffung einer Buszustands-Steuerschaltung, die effektiv betreibbar ist, selbst wenn der Zugriff auf den Eingangs -Ausgangs-Steuer-IC nicht kontinuierlich erfolgt.Yet another object of the invention is to provide a bus state control circuit that is effectively operable even when access to the input-output control IC is not continuous.

Diese Aufgaben werden durch eine Buszustands-Steuerschaltung gelöst, die im Anspruch definiert ist.These objects are achieved by a bus state control circuit as defined in the claim.

Andere Aufgaben und Merkmale der Erfindung werden aus der folgenden Beschreibung mit Bezug auf die Zeichnungen deutlich.Other objects and features of the invention will become apparent from the following description with reference to the drawings.

Fig. 1 ist ein Zeitablaufdiagramm für einen Bus für den Fall, in dem ein sequentiell verarbeitender Mikroprozessor aufeinanderfolgende Eingangs-Ausgangs-Befehle abgibt, gemäß einer bekannten Schaltung,Fig. 1 is a timing diagram for a bus for the case where a sequentially processing microprocessor issues consecutive input-output commands according to a known circuit,

Fig. 2 ist ein Schaltdiagramm eines Ausführungsbeispiels einer erfindungsgemäßen Buszustands-Steuerschaltung;Fig. 2 is a circuit diagram of an embodiment of a bus state control circuit according to the invention;

Fig. 3 ist ein Zustandsübergangsdiagramm des Ausführungsbeispiels gemäß Fig. 2,Fig. 3 is a state transition diagram of the embodiment according to Fig. 2,

Fig. 4 ist ein Schaltungsdiagramm einer Taktsignal-Erzeugungsschaltung undFig. 4 is a circuit diagram of a clock signal generating circuit and

Fig. 5 bis 8 sind Zeitablaufdiagramme des Ausführungsbeispiels der Fig. 2.Fig. 5 to 8 are timing diagrams of the embodiment of Fig. 2.

Bevorzugtes Ausführungsbeispiel der ErfindungPreferred embodiment of the invention

Fig. 2 zeigt einen Aufbau einer Ausführungsform (Zweiphasen-Taktsystem) der Buszustands-Steuerschaltung gemäß der Erfindung.Fig. 2 shows a structure of an embodiment (two-phase clock system) of the bus state control circuit according to the invention.

D-Flip-Flops 102 bis 107 empfangen ein erstes Taktsignal PHI1 und erzeugen entsprechende Ausgangssignale PI, T1, T2, T3 und TR, die den aktuellen Buszustand anzeigen. Die Ausgaben TI, T1, T2, T3 und TR zeigen einen Ruhezustand, einen ersten Zustand, einen zweiten Zustand, einen dritten Zustand bzw. einen Zustand zur Sicherstellung einer Erholungszeit. D-Flip-Flops 108 bis 112 empfangen ein zweites Taktsignal PHI2 und sind zur Verzögerung der aktuellen Zustände TI, T1, T2, T3 und TR vorgesehen. D-Flip-Flops 114 und 115 liefern ein Signal PIOAC, das durch Verzögerung eines I/O-Zugriffsignals IOAC um eine Taktperiode erhalten wird. Eine Kombinationslogikschaltung 201 empfängt als Eingänge die durch Verzögerung der Ausgangssignale TI, T1, T2, T3 und TR des aktuellen Buszustands erhaltenen Signale. Sie empfängt ferner ein Zugriffsanforderungssignal ACREQ, das eine Anforderung für einen Zugriff anzeigt, ein I/O-Zugriffssignal IOAC, das anzeigt, daß das Zugriffsanforderungssignal ACREQ sich auf eine spezielle Eingabe-Ausgabe bezieht, wenn dieses Signal aktiv ist, das Signal PIOAC, das durch Verzögerung des I/O-Zugriffsignals IQAC um einen Taktpuls erhalten wird, und ein Wartesignal WAIT, das eine Verlängerung eines Zugriffszyklus anfordert. Das Zugriffsanforderungssignal ACREQ wird während einer vorgegebenen Zeitspanne erzeugt, wenn eine zentrale Verarbeitungseinheit (CPU) eines Mikroprozessors den Zugriff auf ein externes Element wie ein externer Hauptspeicher oder eine Peripherieeinheit erfordert. Beispielsweise wird dieses ACREQ-Signal durche einen Befehlsdekoder erzeugt, wenn der Dekoder einen Befehl für einen externen Zugriff dekodiert (beispielsweise Speicherlesen, Speicherschreiben, I/O-Lesen, I/O-Schreiben).D-flip-flops 102 to 107 receive a first clock signal PHI1 and generate respective output signals PI, T1, T2, T3 and TR which indicate the current bus state. The outputs TI, T1, T2, T3 and TR indicate a sleep state, a first state, a second state, a third state and a state for ensuring a recovery time, respectively. D-flip-flops 108 to 112 receive a second clock signal PHI2 and are provided for delaying the current states TI, T1, T2, T3 and TR. D-flip-flops 114 and 115 provide a signal PIOAC which is obtained by delaying an I/O access signal IOAC by one clock period. A combinational logic circuit 201 receives as inputs the output signals TI, T1, T2, T3 and TR of the current bus state. It also receives an access request signal ACREQ indicating a request for access, an I/O access signal IOAC indicating that the access request signal ACREQ relates to a specific input-output when this signal is active, the signal PIOAC obtained by delaying the I/O access signal IQAC by one clock pulse, and a wait signal WAIT requesting an extension of an access cycle. The access request signal ACREQ is generated during a predetermined period of time when a central processing unit (CPU) of a microprocessor requires access to an external element such as an external main memory or a peripheral unit. For example, this ACREQ signal is generated by an instruction decoder when the decoder decodes an instruction for external access (e.g., memory read, memory write, I/O read, I/O write).

Das I/O-Zugriffsignal IOAC wird aktiv, wenn auf die Eingangs-Ausgangs-Steuereinheit zuzugreifen ist. Dieses IOAC- Signal kann ebenfalls durch den Befehlsdekoder erzeugt werden.The I/O access signal IOAC becomes active when the input-output control unit is to be accessed. This IOAC signal can also be generated by the command decoder.

Das Wartesignal WAIT wird aktiv, wenn eine lange Zugriffsdauer erforderlich ist. Wenn in dieser Ausführungsform eine Zugriffsdauer länger als die Dauer T1 bis T3 erforderlich ist, wird das WAIT-Signal während einer gewünschten Dauer aktiv. Beispielsweise in einem Fall, daß ein Niedergeschwindigkeitsspeicher oder eine Niedergeschwindigkeits-Peripherieeinheit angesprochen wird, wird das WAIT-Signal aktiv.The wait signal WAIT becomes active when a long access time is required. In this embodiment, when an access time longer than the time T1 to T3 is required, the WAIT signal becomes active for a desired time. For example, in a case that a low-speed memory or a low-speed peripheral device is accessed, the WAIT signal becomes active.

Die Logikschaltung 101 bestimmt einen folgenden Buszustand.The logic circuit 101 determines a subsequent bus state.

Die folgende Tabelle 1 ist eine Wahrheitstabelle der Kombinationslogikschaltung 101. Tabelle 1 Eingabe Ausgabe Verzögerte SignaleThe following Table 1 is a truth table of the combinational logic circuit 101. Table 1 Input Output Delayed signals

Im Folgenden wird der Betrieb der vorliegenden Ausführungsform mit Bezug auf Tabelle 1 erläutert.The operation of the present embodiment will now be explained with reference to Table 1.

Zunächst sei angenommen, daß der aktuelle Buszustand der Zustand TI ist (S1). Wenn das Zugriffs-Anforderungssignal ACREQ aktiv wird, wird ein Übergang zum Zustand T1 (S2) durchgeführt. Als nächstes wird ein Übergang zum Zustand T2 (S3) durchgeführt. Falls das Wartesignal WAIT im Zustand T2 aktiv ist, verbleibt der Zustand T2 (S4), falls dieses Signal inaktiv ist, wird ein Übergang zum Zustand T3 durchgeführt (S5). Dieser Vorgang wird zur Sicherstellung einer Zugriffszeit für den Eingangs-Ausgangs-Steuer-IC durchgeführt. Wenn das Zugriffsanforderungssignal ACREQ im Zustand T3 inaktiv ist, wird ein Übergang zum Zustand TI durchgeführt (S9). Nach dem Zustand T3 (S5), wenn das Zugriffs-Anforderungssignal ACREQ aktiv ist und wenn das I/O-Zugriffssignal IOAC inaktiv ist, wird ein Übergang zum Zustand T1 (S6) durchgeführt. Bei dieser Ausführungsform wird in S6 nicht auf die Eingabe-Ausgabe-Steuereinheit zugegriffen, während ein externer Speicher angesprochen wird. Wenn das Zugriffsanforderungssignal ACREQ aktiv ist und das I/O-Zugriffssignal IOAC aktiv ist, wird ein Wechsel in den Zustand T1 nach dem Zustand T3, ohne den Zustand TR, durchgeführt, falls PIOAC inaktiv ist (S7). Das bedeutet, wenn der vorhergehende Zugriff kein I/O-Zugriff ist, wird der Zustand T3 direkt, ohne Erholungszeit in den Zustand T1 geändert. Wenn andererseits das ACREQ-Signal aktiv ist und das PIOAC ebenso aktiv ist, wird ein Übergang in den Zustand TR vom Zustand T3 durchgeführt, falls IQAC aktiv ist (S8). Das bedeutet, wenn die IOAC-Signale aufeinanderfolgend zumindest zweimal aktiviert werden, wird der Zustand TR notwendigerweise zwischen die Zustände T3 und T1 eingefügt. Auf diese Weise wird die Erholungszeit geschaffen. Ein Übergang vom Zustand TR in den Zustand T1 wird unbedingt durchgeführt (S10).First, assume that the current bus state is state TI (S1). When the access request signal ACREQ becomes active, a transition to state T1 (S2) is made. Next, a transition to state T2 (S3) is made. If the wait signal WAIT is active in state T2, state T2 remains (S4), if this signal is inactive, a transition to state T3 is made (S5). This process is used to ensure a Access time for the input-output control IC is performed. If the access request signal ACREQ is inactive in state T3, a transition to state TI is performed (S9). After state T3 (S5), if the access request signal ACREQ is active and if the I/O access signal IOAC is inactive, a transition to state T1 is performed (S6). In this embodiment, in S6, the input-output control unit is not accessed while an external memory is being accessed. If the access request signal ACREQ is active and the I/O access signal IOAC is active, a transition to state T1 is performed after state T3, without state TR, if PIOAC is inactive (S7). That is, if the previous access is not an I/O access, state T3 is changed directly to state T1 without recovery time. On the other hand, if the ACREQ signal is active and the PIOAC is also active, a transition to the TR state is made from the T3 state if the IQAC is active (S8). That is, if the IOAC signals are activated consecutively at least twice, the TR state is necessarily inserted between the T3 and T1 states. In this way, the recovery time is created. A transition from the TR state to the T1 state is necessarily made (S10).

Fig. 3 ist ein Zustands-übergangsdiagramm des obenbeschriebenen Vorgangs.Fig. 3 is a state transition diagram of the process described above.

Wie in Tabelle 1 angezeigt, wird der Zustand TR nur dann erzeugt, wenn der I/O-Zugriff aufeinanderfolgend erforderlich ist. Die Dauer des Zustandes T3 kann vorhergehend entsprechend der Erholungszeit der Eingangs-Ausgangs- Steuereinheit bestimmt weden. In dieser Ausführungsform ist eine Taktdauer dem Zustand TR zugeordnet. Der Zustand TR wird weggelassen, wenn der vorhergehende Zugriff kein IO- Zugriff ist. Desweiteren kann der Zustand TR weggelassen werden, wenn eine Dauer, die länger als die Erholungsdauer ist, zwischen den aufeinanderfolgenden I/O-Zugriffen vorliegt, da das D-Flip-Flop-115 zurückgesetzt ist.As shown in Table 1, the state TR is generated only when the I/O access is required consecutively. The duration of the state T3 can be determined in advance according to the recovery time of the input-output control unit. In this embodiment, one clock period is assigned to the state TR. The state TR is omitted when the previous access is not an IO access. Furthermore, the state TR can be omitted. if a duration longer than the recovery time occurs between consecutive I/O accesses because the D flip-flop 115 is reset.

Ein tatsächliches Tastsignal wird unter Verwendung des Zustandes T1 und des Zustandes T3, wie in Fig. 4 dargestellt ist, erzeugt. Jedes der D-Flip-Flops 103, 105, 106 und 107 gibt ein Pulssignal aus. Jedes Pulssignal ist in einem Zyklus des Taktsignals PHI1 aktiv. Die Zustände T1, T2, T3 und TR sind durch Ausgangspulssignale der Flip-Flops 103, 105, 106 bzw. 107 dargestellt.An actual key signal is generated using the state T1 and the state T3 as shown in Fig. 4. Each of the D flip-flops 103, 105, 106 and 107 outputs a pulse signal. Each pulse signal is active in one cycle of the clock signal PHI1. The states T1, T2, T3 and TR are represented by output pulse signals of the flip-flops 103, 105, 106 and 107, respectively.

In Fig. 4 wird das Ausgangspulssignal, das den Zustand T1 angibt, das ist das Pulssignal vom Flip-Flop 103, einem UND-Tor 120 zugeführt, während das Ausgangspulssignal (T3) vom Flip-Flop 106 einem UND-Tor 121 zugeführt wird. Diese beiden UND-Signale werden durch das Taktsignal PHI 2 gesteuert. Der Ausgang des UND-Tores 120 ist auf einen Einstellanschluß (S) eines Set-Reset-Flip-Flops 122 geschaltet. Der Ausgang des UND-Tores 121 ist mit einem Resetanschluß (R) des Flip-Flops 122 verbunden. Das Flip-Flop 122 aktiviert ein Tastsignal (DS), wenn sowohl das Signal (T1) als auch das Signal PHI2 vom UND-Tor 120 empfangen werden, und inaktiviert das Tastsignal (DS), wenn das Signal (T3) und PHI2 vom UND-Tor 121 empfangen werden. Somit wird das Tastsignal DS von der Eingangszeitsteuerung des Signals (T1) bis zur Eingangszeitsteuerung des Signals (T3) erzeugt.In Fig. 4, the output pulse signal indicating the state T1, that is the pulse signal from the flip-flop 103, is fed to an AND gate 120, while the output pulse signal (T3) from the flip-flop 106 is fed to an AND gate 121. These two AND signals are controlled by the clock signal PHI 2. The output of the AND gate 120 is connected to a set terminal (S) of a set-reset flip-flop 122. The output of the AND gate 121 is connected to a reset terminal (R) of the flip-flop 122. The flip-flop 122 activates a key signal (DS) when both the signal (T1) and the signal PHI2 are received from the AND gate 120, and inactivates the key signal (DS) when the signal (T3) and PHI2 are received from the AND gate 121. Thus, the key signal DS is generated from the input timing of the signal (T1) to the input timing of the signal (T3).

In dieser Ausführungsform der Erfindung wird das Tastsignal in den Zuständen T1, T2 und T3 aktiviert, wenn das PIOAC- Signal inaktiv ist. Das Tastsignal wird in den Zuständen T1, T2, T3 und TR aktiviert, wenn das PIQAC-Signal aktiviert ist, da die Rücksetzzeit des Flip-Flops 122 durch Einfügung des Zustandes TR (Erholungszeit) verzögert ist.In this embodiment of the invention, the key signal is activated in states T1, T2 and T3 when the PIOAC signal is inactive. The key signal is activated in states T1, T2, T3 and TR when the PIQAC signal is activated because the reset time of the flip-flop 122 is delayed by inserting the state TR (recovery time).

Fig. 5 ist ein Zeitablaufdiagramm für den Fall, in dem ein Speicherzugriff anschließend an einen Ausgangs-Eingangs-Zugriff durchgeführt wird. Das Diagramm zeigt den Übergang vom Zustand T3, in dem ein Speicherzugriffzyklus durchgeführt wird, zu dem Zustand T1 des Eingangs-Ausgangs-Zugriffszyklus. Fig. 6 ist ein Zeitablaufdiagramm für den Fall, in dem ein Eingangs-Ausgangs-Zugriff anschließend an den Speicherzugriff erfolgt. Der Übergang wird vom Zustand T3 des Eingangs-Ausgangs-Zugriffszyklus in den Zustand T1 des Speicherzugriffszyklus durchgeführt. Fig. 7 ist ein Zeitablaufdiagramm für den Fall, in dem der Eingangs -Ausgangs-Zugriff aufeinanderfolgend durchgeführt wird. Das Diagramm zeigt, daß ein Übergang einmal vom Zustand T4 des anfänglichen Eingangs-Ausgangs-Zugriffszyklus in den Zustand TR zur Sicherstellung der Erholungszeit vor dem Übergang zum Zustand T1 des folgenden Eingangs-Ausgangs-Zugriffszyklus durchgeführt wird. Fig. 8 ist ein Zeitablaufdiagramm für den Fall, in dem Eingangs-Ausgangs-Zugriffszyklen aufeinanderfolgend durchgeführt werden, wobei der Zustand T1 zwischengefügt ist. Es ist dargestellt, daß in diesem Fall die Erholungszeit sichergestellt ist, ohne durch den Zustand TR zu gelangen.Fig. 5 is a timing diagram for the case where a memory access is performed subsequent to an output-input access. The diagram shows the transition from the state T3 in which a memory access cycle is performed to the state T1 of the input-output access cycle. Fig. 6 is a timing diagram for the case where an input-output access is performed subsequent to the memory access. The transition is performed from the state T3 of the input-output access cycle to the state T1 of the memory access cycle. Fig. 7 is a timing diagram for the case where the input-output access is performed sequentially. The diagram shows that a transition is made once from the state T4 of the initial input-output access cycle to the state TR to ensure the recovery time before the transition to the state T1 of the following input-output access cycle. Fig. 8 is a timing diagram for the case where input-output access cycles are performed consecutively with the state T1 interposed. It is shown that in this case the recovery time is ensured without passing through the state TR.

In dem oben beschriebenen Ausführungsbeispiel ist ein Eintakt-Intervall dem Zustand zur Sicherstellung der Erholungszeit zugeordnet. Es kann vorkommen, daß das Eintakt-Intervall nicht zur Sicherstellung der Erholungszeit des Eingangs-Ausgangs-Steuer-IC ausreichend ist, aufgrund solcher Faktoren wie der Taktfrequenz eines Mikroprozessors und der Anzahl der Takte für einen Buszugriffszyklus. In diesem Fall kann die Erholungszeit in einfacher Weise durch Aufbau der Buszustands-Steuerschaltung derart sichergestellt werden, daß der Zustand zur Sicherstellung der Erholungszeit wie erforderlich erhöht wird und daß, wenn ein Eingangs-Ausgangs-Zugriffszyklus aufeinanderfolgend ist, ein folgender Eingangs-Ausgangs-Zyklus begonnen wird, nach dem der so erhöhte Zustand durchgelaufen ist. Zur Verlängerung des Zustandes TR entsprechend der erforderlichen Erholungszeit kann die Logikschaltung 101 modifiziert werden. Zum Beispiel wird ein Verzögerungstor zur Verzögerung des Übergangs vom Zustand TR in den Zustand T1 in die Logikschaltung 101 eingebracht. Die Logikschaltung 101 kann durch eine bekannte willkürliche Logikschaltung gebildet sein.In the embodiment described above, a one-clock interval is assigned to the recovery time ensuring state. It may happen that the one-clock interval is not sufficient to ensure the recovery time of the input-output control IC due to such factors as the clock frequency of a microprocessor and the number of clocks for one bus access cycle. In this case, the recovery time can be ensured in a simple manner by structuring the bus state control circuit such that the recovery time ensuring state is increased as required and that, when an input-output access cycle is consecutive, a subsequent input-output cycle is started after which the thus increased state has passed through. The logic circuit 101 can be modified to extend the state TR in accordance with the required recovery time. For example, a delay gate for delaying the transition from the state TR to the state T1 is introduced into the logic circuit 101. The logic circuit 101 can be formed by a known arbitrary logic circuit.

Wie oben beschrieben wurde, kann mit der vorliegenden Erfindung die Erholungszeit eines Eingangs-Ausgangs-Steuer-IC mit nur einer unausweichlichen minimalen Verschlechterung der Leistungsfähigkeit eines Mikroprozessors lediglich durch Verzögern des Beginns eines folgenden Bus Zyklus sichergestellt werden, wenn die Buszyklen für Eingabe und Ausgabe aufeinanderfolgend sind. Die Erfindung verwendet ein System, bei dem ein erstes Signal, das anzeigt, daß ein Zugriffsanforderungssignal für eine Eingangs-Ausgangs-Vorrichtung ist, und ein zweites Signal, das anzeigt, daß ein Zugriff direkt vor dem Signal für die Eingangs-Ausgangs- Vorrichtung war, zusammen in eine Buszustandsfolge eingegeben werden. Desweiteren wird ein Zustand zur Sicherstellung der Erholungszeit nur in dem Fall eingefügt, wenn ein vorhergehender Zugriff auf die Eingangs-Ausgangs-Vorrichtung erfolgte und Zugriffe für die Eingangs-Ausgangs-Vorrichtung aufeinanderfolgend erfolgen.As described above, with the present invention, the recovery time of an input-output control IC can be ensured with only an inevitable minimum deterioration in the performance of a microprocessor merely by delaying the start of a subsequent bus cycle when the bus cycles for input and output are consecutive. The invention uses a system in which a first signal indicating that an access request signal is for an input-output device and a second signal indicating that an access was immediately before the signal for the input-output device are input together into a bus state sequence. Furthermore, a state for ensuring the recovery time is inserted only in the case where a previous access to the input-output device has been made and accesses for the input-output device are made consecutively.

Erfindungsgemäß kann ferner das Tastsignal als I/O-Lesetastsignal oder als I/O Schreibtastsignal verwendet werden. Wenn ein Speicher, der die Erholungszeit erfordert, verwendet wird, wird die vorliegende Erfindung dort ebenfalls angewendet. In diesem Fall kann das invertierte IOAC-Signal dem Flip-Flop 114 eingegeben werden. Ein Speicherzugriffs- Signal kann als IOAC-Signal verwendet werden.Further, according to the present invention, the key signal may be used as an I/O read key signal or an I/O write key signal. When a memory requiring the recovery time is used, the present invention is also applied there. In this case, the inverted IOAC signal may be input to the flip-flop 114. A memory access signal may be used as the IOAC signal.

Claims (1)

1. Buszustands-Steuerschaltung in einem Mikroprozessorsystem, das mit einer Eingabe-Ausgabe-Vorrichtung zu verbinden ist, wobei die Buszustands-Steuerschaltung auf ein erstes Taktsignal (PHI1), ein Zugriffs-Anforderungssignal (ACREQ), ein zweites Taktsignal (PHI2) und auf Eingabe -Ausgabe-Vorrichtungs-Zugriffs-Signale (IQAC, PiOAC) anspricht, wobei die Buszustands-Steuerschaltung aufweist:1. Bus state control circuit in a microprocessor system to be connected to an input-output device, the bus state control circuit responsive to a first clock signal (PHI1), an access request signal (ACREQ), a second clock signal (PHI2) and to input-output device access signals (IQAC, PiOAC), the bus state control circuit comprising: eine Tastsignal-Erzeugungsschaltung (120, 121, 122), die ein Tastsignal (DS) erzeugt, das der Eingabe-Ausgabe-Vorrichtung zum Anzeigen des Zeitpunktes zugeführt wird, bei dem ein Zugriff auf die Eingabe-Ausgabe möglich ist, eine erste Verzögerungs-Einrichtung (102-107), die eine Anzahl von Bus-Zustandssignalen (T1-T3 und TR) in Abhängigkeit von dem ersten Taktsignal (PHI1) ausgibt,a key signal generating circuit (120, 121, 122) which generates a key signal (DS) which is supplied to the input-output device for indicating the time at which access to the input-output is possible, a first delay device (102-107) which outputs a number of bus status signals (T1-T3 and TR) in dependence on the first clock signal (PHI1), eine zweite Verzögerungseinrichtung (108-113), die mit der ersten Verzögerungseinrichtung (102-107) verbunden ist, zur Erzeugung einer Anzahl von zweiten Verzögerungssignalen entsprechend der Ausgabe der ersten Verzögerungseinrichtung (102-107) in Abhängigkeit von dem zweiten Taktsignal (PHI2),a second delay device (108-113) connected to the first delay device (102-107) for generating a number of second delay signals corresponding to the output of the first delay device (102-107) in dependence on the second clock signal (PHI2), eine dritte Verzögerungseinrichtung (114, 115), die auf das Vorrichtungszugriff-Signal (IOAC) anspricht, zur Erzeugung eines Dritten Verzögerungssignals (PIOAC) für eine Taktperiode unda third delay means (114, 115) responsive to the device access signal (IOAC) for generating a third delay signal (PIOAC) for a clock period and eine Logikeinrichtung (101), die mit der ersten Verzögerungseinrichtung (102-107) verbunden ist und auf die Ausgaben der zweiten Verzögerungseinrichtung (108-113) anspricht und ferner auf das Zugriffs-Anforderungssignal (ACRIQ) und das Eingabe-Ausgabe-Vorrichtungs-Zugriffs-Signal (IOAC) und das dritte Verzögerungssignal (PIOAC) anspricht, zur Bestimmung der nächsten Buszustände und zur Zuführung von Signalen, die derartige Zustände angeben, an die erste Verzögerungseinrichtung (102-107), wobei die Tastsignal-Erzeugungsschaltung (120, 121, 122) anspricht auf:logic means (101) connected to said first delay means (102-107) and responsive to the outputs of said second delay means (108-113) and further responsive to said access request signal (ACRIQ) and said input-output device access signal (IOAC) and said third delay signal (PIOAC) for determining the next bus states and for supplying signals indicative of such states to the first delay means (102-107), the key signal generating circuit (120, 121, 122) being responsive to: ein erstes Buszustandssignal (T1) zur Steuerung der Start- Zeit-Steuerung des Tastsignals (DS),a first bus status signal (T1) for controlling the start-time control of the key signal (DS), ein zweites Buszustandssignal (T3) zur Steuerung des Endzeitpunktes des Tastsignals (DS) unda second bus status signal (T3) for controlling the end time of the key signal (DS) and ein drittes Buszustandssignal (TR) zur Verzögerung des Startbeginns während einer vorgegebenen Zeitspanne im Fall, daß ein vorheriger Zugriff auf die Eingabe-Ausgabe-Vorrichtung erfolgte, wobei das dritte Buszustandssignal (TR) nur dann aktiv wird, wenn sowohl das Zugriffs-Anforderungs-Signal (ACRIQ), das verzögerte I/O-Zugriffssignal (PIDAC) als auch das I/O-Zugriffssignal (IOAC) aktiv sind und die Tastsignal-Erzeugungsschaltung (120, 121, 122) den Zugriff in dem Fall direkt startet, wenn ein vorhergehender Zugriff auf eine andere Vorrichtung als die Eingabe-Ausgabe-Vorrichtung durchgeführt wurde oder wenn der vorhergehende Zugriff auf die Eingabe-Ausgabe-Vorrichtung erfolgte, aber eine vorgegebene Zeitspanne abgelaufen ist, wenn das Zugriffs-Anforderungs-Signal den Zugriff auf die Eingabe-Ausgabe-Vorrichtung anzeigt.a third bus state signal (TR) for delaying the start of the start for a predetermined period of time in the event that a previous access to the input-output device has taken place, the third bus state signal (TR) only becoming active when both the access request signal (ACRIQ), the delayed I/O access signal (PIDAC) and the I/O access signal (IOAC) are active and the key signal generating circuit (120, 121, 122) starts the access directly in the case when a previous access to a device other than the input-output device has been carried out or when the previous access to the input-output device has taken place but a predetermined period of time has elapsed when the access request signal indicates access to the input-output device.
DE3650165T 1985-08-21 1986-08-21 Bus state control circuit. Expired - Fee Related DE3650165T2 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60184723A JPS6243764A (en) 1985-08-21 1985-08-21 Bus state control circuit

Publications (2)

Publication Number Publication Date
DE3650165D1 DE3650165D1 (en) 1995-01-19
DE3650165T2 true DE3650165T2 (en) 1995-07-06

Family

ID=16158237

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3650165T Expired - Fee Related DE3650165T2 (en) 1985-08-21 1986-08-21 Bus state control circuit.

Country Status (4)

Country Link
US (1) US4772888A (en)
EP (1) EP0212636B1 (en)
JP (1) JPS6243764A (en)
DE (1) DE3650165T2 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2608863B1 (en) * 1986-12-19 1994-04-29 Nec Corp INTEGRATED LOGIC CIRCUIT COMPRISING ELECTRONIC INPUT AND OUTPUT SWITCHES FOR STABILIZING THE PULSE TIMES
JPS63228206A (en) * 1987-03-17 1988-09-22 Nec Corp Clock distribution system
US5155812A (en) * 1989-05-04 1992-10-13 Texas Instruments Incorporated Devices and method for generating and using systems, software waitstates on address boundaries in data processing
EP0309989A3 (en) * 1987-09-28 1989-07-26 Compaq Computer Corporation High speed microprocessor with one-shot timer for 8-bit i/o accesses
US4835414A (en) * 1988-03-14 1989-05-30 Advanced Micro Devices, Inc. Flexible, reconfigurable terminal pin
JPH0276057A (en) * 1988-09-13 1990-03-15 Toshiba Corp I/o recovery system
US4992678A (en) * 1988-12-15 1991-02-12 Ncr Corporation High speed computer data transfer system
JP2570847B2 (en) * 1989-02-08 1997-01-16 日本電気株式会社 Data transfer method
US5065313A (en) * 1989-03-30 1991-11-12 Dell Usa Corporation Digital computer system having circuit for regulation of I/O command recovery time
US5617574A (en) 1989-05-04 1997-04-01 Texas Instruments Incorporated Devices, systems and methods for conditional instructions
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
US5220659A (en) * 1989-09-18 1993-06-15 Micral, Inc. System for matching data recovery time between different devices by extending a cycle upon detecting end of cycle
CA2027819A1 (en) * 1989-11-03 1991-05-04 Maria L. Melo Programmable input/output delay between accesses
CA2023998A1 (en) * 1989-11-13 1991-05-14 Thomas F. Lewis Apparatus and method for guaranteeing strobe separation timing
JP3018404B2 (en) * 1990-06-21 2000-03-13 日本電気株式会社 Microprocessor
US7088335B2 (en) * 1999-04-28 2006-08-08 Novus Partners Llc Methods and apparatus for ultra-violet stimulated displays
US6970985B2 (en) 2002-07-09 2005-11-29 Bluerisc Inc. Statically speculative memory accessing
US20050114850A1 (en) 2003-10-29 2005-05-26 Saurabh Chheda Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control
US7996671B2 (en) 2003-11-17 2011-08-09 Bluerisc Inc. Security of program executables and microprocessors based on compiler-architecture interaction
US8607209B2 (en) 2004-02-04 2013-12-10 Bluerisc Inc. Energy-focused compiler-assisted branch prediction
US20080126766A1 (en) 2006-11-03 2008-05-29 Saurabh Chheda Securing microprocessors against information leakage and physical tampering

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1561961A (en) * 1977-04-20 1980-03-05 Int Computers Ltd Data processing units
JPS5483341A (en) * 1977-12-15 1979-07-03 Nec Corp Digital integrated circuit
US4575794A (en) * 1982-02-22 1986-03-11 International Business Machines Corp. Clocking mechanism for multiple overlapped dynamic programmable logic arrays used in a digital control unit
US4562427A (en) * 1983-01-28 1985-12-31 Ncr Corporation System and method for stabilizing asynchronous state machines
US4580137A (en) * 1983-08-29 1986-04-01 International Business Machines Corporation LSSD-testable D-type edge-trigger-operable latch with overriding set/reset asynchronous control

Also Published As

Publication number Publication date
US4772888A (en) 1988-09-20
JPH0543151B2 (en) 1993-06-30
JPS6243764A (en) 1987-02-25
EP0212636A3 (en) 1989-07-19
EP0212636B1 (en) 1994-12-07
DE3650165D1 (en) 1995-01-19
EP0212636A2 (en) 1987-03-04

Similar Documents

Publication Publication Date Title
DE3650165T2 (en) Bus state control circuit.
DE3853613T2 (en) Microcomputer with flexible application-specific integrated circuits.
DE3751164T2 (en) Data processor with various types of interrupt processing.
DE68925615T2 (en) Digital computer system with low power consumption mode
DE3689394T2 (en) Information processing system with a general purpose processor and a special purpose processor.
DE2411963C3 (en) Electronic data processing system with a priority control circuit with changeable control blocks
DE69810064T2 (en) Method and arrangement for changing the execution of a follow-up command in a data processor
DE3876780T2 (en) MICRO COMPUTER WITH BUILT-IN CHIP SELECTION AND PROGRAMMABLE BUS EXPANSION.
DE69130630T2 (en) Synchronous process and device for processors
DE69933515T2 (en) peripheral processor
DE69710515T2 (en) Method and device for determining waiting states on a cycle basis in a data processing system
DE3852604T2 (en) Microcomputer system with a master processor and a slave processor.
DE68920929T2 (en) Timer channel with multiple timer reference features.
DE68915074T2 (en) Integrated timer circuit with several channels and assigned operating processor.
DE3248680A1 (en) MICROCOMPUTER WITH ENERGY SAVING OPERATING CONDITION
DE2719635A1 (en) ARRANGEMENT FOR AN EXTENSION OF A MICROPROGRAM CONTROL OF A DATA PROCESSING SYSTEM
DE2744531A1 (en) ELECTRONIC DATA PROCESSING SYSTEM
DE68922545T2 (en) Assigned service processor with transmission options between channels.
DE68919018T2 (en) Timer channel with match recognition features.
DE4027510A1 (en) IC WITH TEST FUNCTION
DE2945168A1 (en) ENGINE CONTROL UNIT
DE3687893T2 (en) CONTROL SYSTEM FOR PROGRAM JUMP OPERATION.
DE2533737A1 (en) DATA PROCESSOR
DE69500748T2 (en) Electronic circuit and method for use with a coprocessor
DE68926079T2 (en) Computer system and method for changing the operating speed of the system bus

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee