DE2325687C3 - Method and device for determining the order in which several requests of various types made by several units of a data processing system to a unit of the data processing system are processed by a queue control - Google Patents
Method and device for determining the order in which several requests of various types made by several units of a data processing system to a unit of the data processing system are processed by a queue controlInfo
- Publication number
- DE2325687C3 DE2325687C3 DE19732325687 DE2325687A DE2325687C3 DE 2325687 C3 DE2325687 C3 DE 2325687C3 DE 19732325687 DE19732325687 DE 19732325687 DE 2325687 A DE2325687 A DE 2325687A DE 2325687 C3 DE2325687 C3 DE 2325687C3
- Authority
- DE
- Germany
- Prior art keywords
- requests
- output
- units
- unit
- input
- 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
Links
- 230000015654 memory Effects 0.000 claims description 35
- 230000002093 peripheral Effects 0.000 claims description 27
- 238000000034 method Methods 0.000 claims description 8
- 230000001629 suppression Effects 0.000 claims description 3
- 230000003936 working memory Effects 0.000 claims 2
- 238000011030 bottleneck Methods 0.000 claims 1
- 230000001419 dependent Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010276 construction Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000001771 impaired Effects 0.000 description 1
- 230000000977 initiatory Effects 0.000 description 1
- 230000035484 reaction time Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Description
forderungen von beiden Einheiten die Einheit mil der niederen Priorität mit Hilfe eines ersten Qualifikators die Zuteilung einer Mindestmenge von Speicherzyklen zu Lasten der Einheit mit der höheren Priorität fordert und die Einheit mit der höheren Priorität mit Hilfe eines zweiten Qualifikators die Zuteilung von geketteten Speicherzyklen zu Lasten der Einheit niederer Priorität fordert, daß die Warteschlangensteuerung bei gleichzeitigem Vorliegen von Anforderungen von beiden Einheiten eine Verbindung mit der Einheit niederer Priorität aufbaut, wenn der erste Qualifikator Null ist und vorher ein Verkehr mit der Einheit höherer Priorität stattgefunden hat, wobei dieser vorausgegangene Verkehr keine geketteten Speicherzyklen verlangt hat, und daß die Warteschlangensteuerung bei Vorliegen von Anforderungen von beiden Einheiten eine Verbindung mit der Einheit höherer Priorität aufbaut, wenn der erste Qualifikator 1 ist, oder wenn der erste Qualifikator 0 ist und vorher kein Verkehr mit der Einheit höherer Priorität oder ein Verkehr mit Kettungsverlangen gegeben war.demands from both units the unit with the lower priority with the help of a first qualifier the allocation of a minimum amount of memory cycles at the expense of the unit with the higher Priority demands and the unit with the higher priority with the help of a second qualifier the Allocation of chained memory cycles at the expense of the lower priority unit requires that the queue control if there are requests from both units at the same time, a connection is established with the unit of lower priority if the first qualifier is zero and before one Traffic has occurred with the higher priority unit, this previous traffic being none has requested chained memory cycles and that queuing when there are requests of both units establishes a connection with the unit of higher priority if the first Qualifier is 1, or if the first qualifier is 0 and before that there is no communication with the unit higher Priority or communication with a chain request was given.
Werden die Anforderungen an einen Eingabe-Ausgabe-Prozessor gestellt, dann ist die erfindungsgemäße Vorrichtung zur Durchführung des Verfahrens gekennzeichnet durch eine Warteschlangensteuerung mit einem Anforderungsdecoder, der zwisehen von den peripheren Geräten kommenden Unterbrechungsanforderungen und Datenanforderungen unterscheidet, mit einem ersten Register für die Unterbrechungsanforderungen, mit einem zweiten Register für die Datenanforderungen, mit einem ersten, dem ersten Register zugeordneten Maskenregister, mit einem zweiten, dem zweiten Register zugeordneten Maskenregister, mit einer ersten und zweiten Koinzidenzschaltung, die nur die Anforderangen weiterleitet, für die in den Maskenregistern die zugeordneten Maskenstellen gesetzt sind, mit einem logischen Netzwerk, dem die durch die Maskenregister ausgewählten Unterbrechungsanforderungen und Datenanforderungen zugeführt werden und das Unterbrechungsanforderungen und nur für den FaIl, daß keine Unterbrechungsanforderungen vorliegen, Datenanforderungen weiterleitet, mit einem Prioritätsnetzwerk, das aus der Zahl der Unterbrechungsanforderungen oder Datenanforderungen eine Anforderung auswählt, mit einer Vergleichsschaltung, die die Nummern der Anschlußstellen für die Eingabe-Ausgabe-Befehle mit den Nummern der Anschlußstellen der vom Prioritätsnetzwerk ausgewählten Anforderungen vergleicht und bei N <Ξ Pl ein erstes Signal und bei N > P1 ein zweites Signal abgibt und mit einem kombinatorischen Netzwerk, das an einem ersten Ausgang bei Vorliegen von Maskenbefehlen ein Signal abgibt, das an seinem zweiten Ausgang bei Auswahl von Eingabe-Ausgabe-Befehlen ein Signal abgibt, das an einem dritten Ausgang bei Auswahl von Unterbrechungsanforderungen ein Signal abgibt, und das an einem vierten Ausgang bei Auswahl von Datenanforderungen ein Signal abgibtIf the requirements are placed on an input-output processor, then the device according to the invention for carrying out the method is characterized by a queue control with a request decoder, which distinguishes between interrupt requests and data requests coming from the peripheral devices, with a first register for the interrupt requests a second register for the data requests, with a first mask register assigned to the first register, with a second mask register assigned to the second register, with a first and second coincidence circuit which only forwards the requests for which the assigned mask positions are set in the mask registers , with a logical network to which the interrupt requests and data requests selected by the mask register are fed and which interrupt requests and only in the event that no interrupt requests present, forwards data requests, with a priority network that selects a request from the number of interrupt requests or data requests, with a comparison circuit that compares the numbers of the connection points for the input-output commands with the numbers of the connection points of the requests selected by the priority network and at N <Ξ Pl emits a first signal and when N > P 1 a second signal and with a combinatorial network that emits a signal at a first output when mask commands are present, which at its second output when input-output commands are selected Outputs a signal which outputs a signal at a third output when interrupt requests are selected, and which outputs a signal at a fourth output when data requests are selected
Andere Weiterbildungen der Erfindung ergeben sich aus den Unteransprüchen.Other developments of the invention emerge from the subclaims.
Die Erfindung wird an Hand von Ausführungsbeispielen, die in den Figuren dargestellt sind, weiter erläutert Es zeigtThe invention is based on exemplary embodiments that are shown in the figures, on explained it shows
Fig. 1 ein Blockschaltbild der Verarbeitungseinheiten einer Datenverarbeitungsanlage,Fig. 1 is a block diagram of the processing units a data processing system,
F i g. 2 eine Warteschlangensteuerung des Eingabe-Ausgabe-Prozessors, F i g. 2 a queue control of the input-output processor,
F i g. 3 eine Warteschlangensteuerung des Arbeits-Speicherkoordinators. F i g. Figure 3 is a work memory coordinator queue control.
In Fig. 1 ist ein Eingabe-Ausgabe-ProzessorEAP dargestellt, der im Beispiel mit zwei externen Einheiten PEl und PE 2 verbunden ist und andererseits an einen Arbeitsspeicherkoordinator AKO angeschlossen ist. Der Arbeitsspeicherkoordinator A KO liegt andererseits an einem Zentralprozessor ZP. Er steuert den Verkehr des Eingabe-Ausgabe-Prozessors EAP und des Zentralprozessors ZP mit einem Arbeitsspeicher/iSP. In Fig. 1 können an zwei Stellen Warteschlangen entstehen. Die erste Stelle ist der Eingabe-Ausgabe-Prozessor EAP, dem Anforderungen von den externen Geräten PEl und PE2 und andererseits vom Zentralprozessor ZP gestellt werden können. Eine weitere Warteschlange entsteht am Arbeitsspeicherkoordinator AKO, wenn Anforderungen vom Zentralprozessor und Eingabe-Ausgabe-Prozessor gleichzeitig vorliegen.1 shows an input-output processor EAP which, in the example, is connected to two external units PE1 and PE 2 and, on the other hand, is connected to a main memory coordinator AKO . The main memory coordinator A KO is on the other hand on a central processor ZP. It controls the traffic of the input-output processor EAP and the central processor ZP with a main memory / iSP. In Fig. 1, queues can arise in two places. The first position is the input-output processor EAP, which requests from the external devices PE1 and PE2 and, on the other hand, from the central processor ZP can be made. Another queue arises at the main memory coordinator AKO if there are requests from the central processor and the input-output processor at the same time.
Im folgenden wird zunächst auf die Warteschlange beim Eingabe-Ausgabe-Prozessor eingegangen.In the following, the queue at the input-output processor will first be discussed.
Periphere Einheiten stellen Unterbrechungs- und Datenanforderungen an den Eingabe-Ausgabe-Prozessor EA P. Beide Anforderungstypen richten sich zwar an den Eingabe-Ausgabe-Prozessor, aber logisch meint die Unterbrechungsanforderung Zugriff am Zentralprozessor und die Datenanforderung Zugriff am Arbeitsspeicher. Dies schließt nicht aus, daß während der Bearbeitung einer Unterbrechungsanforderung auch Zugriff am Arbeitsspeicher stattfindet. Die Gesamtheit der Unterbrechungsanforderangen am Eingabe-Ausgabe-Prozessor EAP ist im Durchschnitt wesentlich kleiner als die Gesamtheit der Datenanforderungen. Dabei ist Voraussetzung, daß die peripheren Einheiten überwiegend im Blockverkehr arbeiten.Peripheral units make interruption and data requests to the input-output processor EA P. Both types of requests are aimed at the input-output processor, but logically means the interrupt request access to the central processor and the data request access to the main memory. This does not exclude the possibility of access to the main memory while an interrupt request is being processed. The total of the interrupt requests at the input-output processor EAP is, on average, significantly smaller than the total of the data requests. It is a prerequisite that the peripheral units work predominantly in block traffic.
Es wird festgelegt, daß die Unterbrechungsanforderungen eine höhere Priorität haben sollen als die Datenanforderungen. Dadurch wird erreicht, daß Unterbrechungsanforderungen schneller bedient werden als Datenanforderungen. Dies begünstigt die Alarmauslösung beim Prozeßrechner im Zentralprozessor, erleichtert den Aufbau großer Teilnehmerrechnersysteme und trägt außerdem zur guten Ausnützung der Summendatenrate des Eingabe-Ausgabe-Prozessors bei. Wenn beim Datenverkehr Steuerregister im Arbeitsspeicher geführt werden, dann ist die Bearbeitungszeit einer Unterbrechungsanforderung in der Regel wesentlich kleiner als die einer Datenanforderung. Anforderungen, die vom Zentralprozessor ZP an den Eingabe-Ausgabe-Prozessor EAP gegeben werden, sind Eingabe-Ausgabe-Befehle zur Einleitung von Blockverkehr und zur Datenübertragung in beiden Richtungen. Dabei soll es möglich sein, daß der Datenverkehr nicht nur peripher gesteuert wird, sondern auch zentral vom Zentralprozessor aus gesteuert werden kann. Befehle zur Einleitung des Datenverkehrs ähneln Unterbrechungsanforderungen. Hingegen sind Übertragungsbefehle für Datenübertragungen verwandt mit Datenanforderungen. Die Gesamtzahl an Einleitungsbefehlen ist im Durchschnitt gleich der Gesamtzahl an Unterbrechungsanforderungen. Die Gesamtzahl an Übertragungsbefehlen kann zumindest manchmal sehr viel größer sein als die Gesamtzahl an Unterbrechungsanforderungen, aber immer noch sehr vielIt is determined that the interrupt requests should have a higher priority than the data requests. This ensures that interrupt requests are serviced more quickly than data requests. This favors the triggering of an alarm in the process computer in the central processor, facilitates the construction of large subscriber computer systems and also contributes to good utilization of the total data rate of the input-output processor. If control registers are kept in the main memory during data traffic, the processing time of an interrupt request is usually much shorter than that of a data request. Requests which are given by the central processor ZP to the input-output processor EAP are input-output commands for initiating block traffic and for data transmission in both directions. It should be possible that the data traffic is not only controlled peripherally, but can also be controlled centrally from the central processor. Commands to initiate traffic are similar to interrupt requests. In contrast, transfer commands for data transfers are related to data requests. The total number of initiate commands is, on average, equal to the total number of interrupt requests. The total number of transmit commands can at least sometimes be very much greater than the total number of interrupt requests, but still a great deal
kleiner als die Gesamtzahl an Datenanforderungen. Übertragungsbefehle kommen bevorzugt bei Prozeßrechnern im Verkehr mit Prozeßsteuerungen vor.less than the total number of data requests. Transmission commands are preferred for process computers in dealings with process controls.
Auf Grund des Vorhergehenden wird festgelegt, daß Eingabe-Ausgabe-Befehle gegenüber Datenanforderungen wie Unterbrechungsanforderungen behandelt werden. Weiterhin soll bei Konkurrenz von Eingabe-Ausgabe-Befehlen und Anforderungen an der gleichen Anschlußstelle der Befehl Vorrang haben. Eingabe-Ausgabe-Befehle und Unterbrechungsanforderungen werden, vom obengenannten Fall abgesehen, untereinander wie Anforderungen gleichen Typs behandelt.On the basis of the foregoing, it is specified that input-output commands versus data requests how interrupt requests are handled. Furthermore, in the event of competition between input-output commands and requirements the command have priority at the same connection point. Input-output commands and interrupt requests Apart from the above-mentioned case, they are treated as requirements of the same type.
Somit werden die Anforderungen nicht nur entsprechend der Einheit, von der sie abgegeben werden, sondern auch entsprechend ihrem Typ bewertet und priorisiert.Thus, the requirements are not only based on the unit from which they are issued, but also rated and prioritized according to their type.
Weiterhin kann die Warteschlangensteuerung so aufgebaut sein, daß Unterbrechungs- und Datenanforderungen getrennt maskierbar sind.Furthermore, the queue control can be designed so that interruption and data requests can be masked separately.
In F i g. 2 ist ein Ausführungsbeispiel einer Warteschlangensteuerung des Eingabe-Ausgabe-Prozessors dargestellt. Mit PA ist die periphere Anschlußstelle bezeichnet, über die die Daten- bzw. Unterbrechungsanforderungen von peripheren Geräten der Warte- Schlangensteuerung zugeleitet werden. Die von der peripheren Anschlußstelle PA abgehenden Leitungen sind verschiedenen Kanälen des Eingabe-Ausgabe-Prozessors zugeordnet. Die Schnittstelle zu dem Arbeitsspeicherkoordinator AKO ist mit SN bezeichnet. In Fig. 2 shows an embodiment of a queue control of the input-output processor. PA denotes the peripheral connection point via which the data or interrupt requests from peripheral devices are sent to the queue control. The lines going out from the peripheral connection point PA are assigned to different channels of the input-output processor. The interface to the main memory coordinator AKO is denoted by SN.
Unterbrechungsanforderungen und Datenanforderungen von peripheren Geräten werden einem Anforderungsdecoder Dl zugeleitet. Er bestimmt den Typ der peripheren Anforderungen und führt die Anforderungen entweder einem Anforderungsregister für Unterbrechungsanforderungen ARl oder einem Register für Datenanforderungen ARl zu. Jedem Anforderungsregister AR1 bzw. AR 2 ist ein Maskenregister Ml bzw. Ml zugeordnet. Anforderungen werden in den nachgeschalteten Schaltkreisen nur wirksam, wenn die den Anforderungen zugeordneten Maskenstellen in den Maskenregistern gesetzt sind. Diese Auswahl erfolgt mit Hilfe von Koinzidenzschaltungen t/l und Ul. Jedes Maskenregister kann von einem spezifischen Maskenbefehl geladen werden. Ein solcher Maskenbefehl wird dem Befehlsregister Bl zugeführt und im Befehlsdecoder Dl decodiert. Der Befehlsdecoder D1 gibt Signale D 21. D 22 ab, die die Maskenregister Ml und M 2 einstellen. Die Einstellung der Maskenregister Ml, M2 kann durch ein Systemprogramm erfolgen, sie kann aber auch über eine Schaltungsanordnung im Eingabe-Ausgabe-Prozessor durchgeführt werden, die auf Grund von fehlerhaften, peripheren Geräten bestimmte Stellen in den Maskenregistern AfI und Ml setzen oder nicht setzen.Interrupt requests and data requests from peripheral devices are fed to a request decoder Dl. It determines the type of peripheral requests and feeds the requests either to a request register for interrupt requests AR1 or to a register for data requests AR1 . A mask register Ml or Ml is assigned to each request register AR 1 or AR 2. Requirements only become effective in the downstream circuits if the mask positions assigned to the requirements are set in the mask registers. This selection is made with the help of coincidence circuits t / l and Ul. Each mask register can be loaded by a specific mask instruction. Such a mask command is fed to the command register Bl and decoded in the command decoder Dl. The command decoder D1 emits signals D 21. D 22 which set the mask registers Ml and M 2. The setting of the mask registers Ml, M2 can be done by a system program, but it can also be carried out via a circuit arrangement in the input / output processor which set or not set certain positions in the mask registers AfI and Ml due to faulty peripheral devices.
Ein logisches Netzwerk aus Elementen 1/3, i/4, 01, 05, 06 sorgt dafür, daß Datenanforderungen nur dann auf das eine für Unterbrechungs- und Datenanforderungen gemeinsame Prioritätsnetzwerk Pi? geführt werden, wenn keine Unterbrechungsanforderungen vorliegen. Durch t/3 und i/4 werden Konjunktionen zwischen den Ausgangssignalen der Koinzidenzschaltungen t/l bzw. i/2 und 505 bzw. 5Ö~5 durchgeführt, in 01 exklusive Disjunktionen der Ausgangssignale von 1/3 und 1/4. Der Aufbau des Prioritätsnetzwerkes PR kann auf bekannte Art und Weise erfolgen. Zum Beispiel können durch das Prioritätsnetzwerk PR die Prioritäten der einzelnen peripheren Geräte untereinander festgelegt werden. Entscheidend ist allein, daß durch das Prioritätsnetzwerk PR eine Anschlußstelle ausgewählt wird. Das Ausgangssignal des Prioritätsnetzwerkes Pi? ist mit P1 bezeichnet.A logical network of elements 1/3, i / 4, 01, 05, 06 ensures that data requests are only sent to the priority network Pi? be performed when there are no interrupt requests. By t / 3 and i / 4 conjunctions between the output signals of the coincidence circuits t / l or i / 2 and 505 or 505 or 505 are carried out, in 01 exclusive disjunctions of the output signals of 1/3 and 1/4. The priority network PR can be set up in a known manner. For example, the priorities of the individual peripheral devices can be defined among one another by the priority network PR. The only decisive factor is that a connection point is selected by the priority network PR. The output signal of the priority network Pi? is denoted by P1.
Eingabe-Ausgabe-Befehle und Maskenbefehle werden von dem Befehlsregister Bl auf den nachgeschalteten Befehlsdecoder Dl geführt. Jeder Befehl macht die Nummer der Anschlußstelle, an der die Übertragung stattfinden soll, in einem Nummernregister NR namhaft. Aus diesem Grunde werden dem Nummernregister NR Signale D 23 und D 24 vom Befehlsdecoder Dl zugeführt. Das Nummernregister NR gibt die Ausgangssignale N1 ab.Input-output commands and mask commands are passed from the command register Bl to the downstream command decoder Dl . Each command names the number of the connection point at which the transmission is to take place in a number register NR. For this reason, signals D 23 and D 24 from the command decoder Dl are fed to the number register NR. The number register NR outputs the output signals N 1.
Ein Vergleicher Vl liefert die Aussage, ob die in dem Befehl genannte Nummer einer Anschlußstelle kleiner, gleich oder größer der Nummer der Anschlußstelle mit der höchstprioren peripheren Anforderung ist. Dabei soll eine hohe Nummer einer niedrigen Priorität entsprechen. Ist die im Befehl genannte Nummer einer Anschlußstelle kleiner oder gleich der Nummer der Anschlußstelle, über die die Daten- oder Unterbrechungsanforderung kommt (Nl Z. Pl), dann gibt der Vergleicher V1 an seinem ersten Ausgang ein Signal ab. Ist dagegen die im Befehl genannte Nummer größer als die Nummer der Anschlußstelle der Daten- bzw. Unterbrechungsanforderung (N 1 ~> P1), erscheint am zweiten Ausgang des Vergleichers Vl ein Signal.A comparator V1 provides the information as to whether the number of a connection point mentioned in the command is less than, equal to or greater than the number of the connection point with the highest priority peripheral request. A high number should correspond to a low priority. If the number of a connection point mentioned in the command is less than or equal to the number of the connection point via which the data or interrupt request comes (Nl Z. Pl), then the comparator V1 emits a signal at its first output. If, on the other hand, the number mentioned in the command is greater than the number of the connection point of the data or interrupt request (N 1 ~> P 1), a signal appears at the second output of the comparator V1.
Die Ausgangssignale des Vergleichers Vl werden einem kombinatorischen Netzwerk K zugeführt. Das kombinatorische Netzwerk erhält außerdem die Signale D 21, D 22, D 23, D 24 und die Ausgangssignale 505 und 506 der Elemente 05 und 06. D 23, D 24 sind Ausgangssignale des Befehlsdecoders Dl, wenn Eingabe-Ausgabe-Befehle vorliegen. Das kombinatorische Netzwerk K entscheidet nun, welche der in der Warteschlange angeordneten Anforderungen zuerst bearbeitet werden. Entsprechend dieser Entscheidung wird einer der Ausgänge £1, El, El·, E4 aktiviert. Damit ist durch die Warteschlangensteuerung festgelegt worden, welche der anliegenden Anforderungen vom Eingabe-Ausgabe-Prozessor zuerst bearbeitet wird.The output signals of the comparator V1 are fed to a combinational network K. The combinational network also receives the signals D 21, D 22, D 23, D 24 and the output signals 505 and 506 of the elements 05 and 06. D 23, D 24 are output signals of the command decoder Dl when input-output commands are present. The combinatorial network K now decides which of the queued requests will be processed first. According to this decision, one of the outputs £ 1, El, El ·, E4 is activated. The queue control has thus determined which of the pending requests will be processed first by the input / output processor.
Die Entscheidung des kombinatorischen Netzwerkes K läuft nach folgenden Kriterien ab:The decision of the combinatorial network K is based on the following criteria:
Bei Vorliegen von Maskenbefehlen müssen alle anderen Anforderungen warten. Das kombinatorische Netzwerk K gibt am Ausgang £1 ein Signal ab. Es giltIf there are mask commands, all other requests must wait. The combinatorial network K emits a signal at the output £ 1. It applies
Eingabe-Ausgabe-Befehle setzen sich durch, wenn keine peripheren Anforderungen anstehen, oder wenn die im Befehl genannte Nummer Nl der Anschlußstelle kleiner oder gleich der Nummer der Anschlußstelle mit der höchstprioren peripheren Anforderung ist, oder wenn die zuvor genannte Nummernrelation nicht erfüllt ist und nur Datenanforderungen anstehen. Es giltInput-output commands prevail if there are no peripheral requests, or if the number Nl of the connection point mentioned in the command is less than or equal to the number of the connection point with the highest priority peripheral request, or if the aforementioned number relation is not met and only Pending data requests. It applies
E2 = (D23 + D24) · (3Ü5-5Ü5)
+ (505 4- 506) · (Nl < Pl)
+ 5Ü5-5O6-(JV1>P1).E2 = (D23 + D24) (3Ü5-5Ü5)
+ (505 4- 506) (Nl <Pl)
+ 5Ü5-5O6- (JV1> P1).
Unterbrechungsanforderungen setzen sich dann durch und am Ausgang E3 des kombinatoriseheriInterrupt requests then prevail and at the output E3 of the combinatorial
609 653/275609 653/275
Netzwerkes K wird ein Signal abgegeben, wenn gilt £3 = (D21 + D22 + D 23 + £>24) · 505 + (D23 + D24) · 5Ό5 · (/V1>P1)Network K , a signal is emitted if £ 3 = (D 21 + D22 + D 23 + £> 24) 505 + (D23 + D24) 5Ό5 (/ V1> P1)
Datenanforderungen werden nur bearbeitet, wenn giltData requests are only processed if applies
£4 = (D21 + D22 + Ü2i -t- ua4) ■ S65 ■ S06 Dann wird an £4 ein Signal abgegeben.£ 4 = (D21 + D22 + Ü2i -t- ua4) ■ S65 ■ S06 Then a signal is given to £ 4.
wählt - dann erscheint ein Signal am Ausgang Ml — oder Anforderungen des Eingabe-Ausgabe--Prozessors — dann erscheint ein Signal am Ausgang ο iT Ausga"g MO wird dann ein Signal abgegeben, wenn dem Arbeitsspeicherkoordinator keine Anforderung vorliegt. Zudem sind zwei Flip-Flops £nn Γ vorgesehen. Das Flip-Flop FFK wird dann gesetzt, wenn eine Anforderung des Eingabe-Ä e r0ZeSSOrS ab8eab*t worden ist, in derselects - then a signal appears at the output Ml - or requests from the input-output processor - then a signal appears at the output ο iT Out g a "g MO a signal is then emitted if the memory coordinator has no request. In addition, there are two Flip-flops £ nn Γ provided. The flip-flop FFK is set when a request of the input Ä e r0ZeSSOrS from 8 eab * t has been made in the
Signale, die an diesen Ausgängen auftreten.Signals that occur at these outputs.
Das kombinatorische Netzwerk könnte z. B. durch einen geeignet maskierten, integrierten Festwertspeicher realisiert sein.The combinatorial network could e.g. B. by a suitably masked, integrated read-only memory be realized.
Je nachdem, ob ein Befehl oder eine Anforderung bearbeitet wird, ergibt sich die Nummer der anzusteuernden Anschlußstelle aus einem anderen Register. Bei Ausführung eines Befehls aus dem Register NR, bei Ausführung einer Anforderung aus dem Prioritätsnetzwerk PR. Depending on whether a command or a request is being processed, the number of the connection point to be controlled results from a different register. When executing an instruction from the register NR, when executing a request from the priority network PR.
Werden an den Arbeitsspeicherkoordinator A KO Anforderungen vom Zentralprozessor ZP und dem Eingabe-Ausgabe-Prozessor EAP gestellt, dann gilt folgendes:If requests are made to the main memory coordinator A KO by the central processor ZP and the input-output processor EAP , then the following applies:
Die Aufrechterhaltung der Simultanarbeit zwischen Programmen und Eingabe-Ausgabe-Verkehr und die leichte Flüchtigkeit externer Daten (Lochkarte) verlangen die Bevorzugung des Eingabe-Ausgabe-Prozessors. Die schnelle Bedienung lebenswichtiger Alarme durch den Zentralprozessor verlangt eine Bevorzugung des Zentralprozessors.Maintaining the simultaneous work between programs and input-output traffic and the Slight volatility of external data (punch card) requires the input-output processor to be preferred. The rapid servicing of vital alarms by the central processor demands one Central processor preference.
Die Anforderungen des Zentralprozessors und des Eingabe-Ausgabe-Prozessors werden darum durch je einen zusätzlichen Qualifikator (Ql, Q2) gekennzeichnet. Diesen Qualifikatoren sind folgende Bedeutungen zugewiesen:The requirements of the central processor and the input-output processor are therefore each identified by an additional qualifier (Q1, Q2) . These qualifiers are assigned the following meanings:
Ql = I: der Zentralprozessor wartet, bis der Eingabe-Ausgabe-Prozessor EA P keine Speicherzyklen mehr beansprucht.Ql = I: the central processor waits until the input-output processor EA P no longer uses any memory cycles.
Ql = O: der Zsntralprozessor verlangt zu Lasten des Eingabe-Ausgabe-Prozessors EAP die Zuteilung einer Mindestmenge an Speicherzyklen.Ql = O: the central processor demands the allocation of a minimum amount of memory cycles at the expense of the input-output processor EAP.
Q2 = 1: der Eingabe-Ausgabe-Prozessor EAP fordert gekettete Speicherzyklen.Q2 = 1: the input-output processor EAP requests chained memory cycles.
Q 2 = 0: der Eingabe-Ausgabe-Prozessor EAP verzichtet auf gekettete Speicherzyklen.Q 2 = 0: the input-output processor EAP dispenses with chained memory cycles.
Den Qualifikator Ql kann der Zentralprozessor leicht aus in der Regel sowieso vorhandenen Zustands-Flip-Flops ableiten. Der Qualifikator Q 2 wird dann erzeugt, wenn der Eingabe-Ausgabe-Prozessor EAP unmittelbar nacheinander Speicherzyklen benötigt. The central processor can easily derive the qualifier Q1 from the status flip-flops that are usually present anyway. The qualifier Q 2 is generated when the input-output processor EAP requires memory cycles in immediate succession.
Ein Ausführungsbeispiel der Warteschlangensteuerang des Arbeitsspeicherkoordinators ist in Fig. 3 dargestellt Die Schnittstelle zum Eingabe-Ausgabe-Prozessor ist mit EAPS, die Schnittstelle zum Zentralprozessor mit ZPS bezeichnet. Einem kombinatorischen Netzwerk JCl, das z. B. als Festwertspeicher ausgebildet sein kann, wird der Qualifikator Q1 von der Schnittstelle ZPS, der Qualifikator Q 2 von der Schnittstelle EAPS zugeleitet. Die Anforderungen Al des Zentralprozessors bzw. die Anforderungen Al des Eingabe-Ausgabe-Prozessors werden einem Register AB zugeführt und gelangen von dort zum Festwertspeicher Kl. Durch den Festwertspeicher werden mit Hilfe der Qualififcatoren Ql und Q 2 entweder Anforderungen des Zentralprozessors ausge-An exemplary embodiment of the queue control of the main memory coordinator is shown in FIG. 3. The interface to the input / output processor is designated EAPS, the interface to the central processor is designated ZPS. A combinatorial network JCl, which z. B. can be designed as a read-only memory, the qualifier Q1 is fed from the interface ZPS, the qualifier Q 2 from the interface EAPS. The requirements A1 of the central processor or the requirements A1 of the input-output processor are fed to a register AB and from there to the read-only memory Kl.
rW„r, Ar·- gcMji/i, wenn eine Anror-rW "r, Ar · - gcMji / i, if an error
3, de t S Eingabc-Ausgabe-Prozessors bearbeitet signal " Sl8nalefl ™d ™ sind Steuer-3, de t S input c-output processor processed signal " Sl 8 nalef l ™ d ™ are control
Der Zustand der Ausgänge MO, Ml, M2 bei Al, A2,Ql, Q2, K und V kann aus abgelesen werden. Die Tabelle hat die in 7 ι } SPalten- 1I der ersten Spalte sind *o t 1° ν lhy durch™meriert. In der zweiten SpalteThe state of the outputs MO, Ml, M2 at Al, A2, Ql, Q2, K and V can be read from. The table has those in 7 ι } S P old - 1 I of the first column are * o t 1 ° ν lh y merged through ™. In the second column
Punkt /?n Η86?, der Anforder«"gen A 1 zum Zeitpunkt N, in der dritten Snalt* H3* Vorliegen der A"Point /? N Η 86 ?, The request «" to A 1 at time N, in the third Snalt * H 3 * presence of the A "
einerone
. — der achten Spalte der Zu-. - the eighth column of the
der anO„ κ Aus8ange ^O bis M2, bei Vorliegen SpalteTef !Γ6" ,Ein8an8sgrößen, in der neunten Spalte der Zustand des Flip-Flops FFA" zum Zeit-υπΑm der zehnten Spalte der Zustand des t-FV zum Zeitpunkt N dargestellt.of a n O "κ from 8 to g e ^ O to M2, in the presence SpalteTef! Γ 6 ', A 8 to 8 s g rö SEN, in the ninth column of the state of the flip-flop FFA" at the time υπ Α In the tenth column, the state of the t-FV at time N is shown.
3535
4040
4545
5050
1 0 0 X X X 1 0 0 XXX
2 0 1*0 02 0 1 * 0 0
3 0 1 X 0 13 0 1 X 0 1
4 0 1 X 1 04 0 1 X 1 0
5 0 1 X 1 15 0 1 X 1 1
6 1 0 X X 06 1 0 XX 0
7 1 0 X X 17 1 0 XX 1
8 110 0 08 110 0 0
9 110 0 09 110 0 0
10 1 1 0 0 110 1 1 0 0 1
11 1 1 011 1 1 0
12 1 1 0
1312 1 1 0
13th
1 1 0 1 ι
1 1 11 1 0 1 ι
1 1 1
15 1 1 l15 1 1 l
X X XX X X
1
0
11
0
1
1 1
0 0
0 1
11 1
0 0
0 1
1
ο χ χ ι χ χ ο χ χ ι χ χ
M 0 0 0 M 2 0 1 M 2 0 1 M M M 0 0 0 M 2 0 1 M 2 0 1 MM
2 1 1 2 1 1 1 0 02 1 1 2 1 1 1 0 0
M 2 0 1 MlOO M 2 0 1 M 2 1 1 MlOO M M 2 0 1 M 100 M 2 0 1 M 2 1 1 M 100 M
M MM M
2 1 1 2 0 1 2 1 12 1 1 2 0 1 2 1 1
6060 —w, VYWJLlU JN.CXUC rtilJAJl-—W, VYWJLlU JN.CXUC rtilJAJl-
hältnkse""^n ? den 2 bis 5 zeigen <Se Ver-AuSabe'Pmt ^Anforderung vom Eingabenu7Se"ASOr ^1168*- die Zeilen 6 u"d 7, wenn ZäΪΑSSVgJ gntraIP—ssor gesteh JZ- j bK 15' wenn vom Eingabe-haltnk se "" ^ n? 2 to 5 g zei en <Ver Se-AuSabe'Pmt ^ request from Eingabenu7Se "AS Or ^ 1168 * - the lines 6 u" d 7 when Zä ΪΑSSVgJ g ntraI P-SSOR confess JZ- j bK 15 'when the Input-
->r und vom Zentralprozessor gleich-'Sen an de° Arbeitsspeicherkoordi--> r and from the central processor equal -'S en an de ° work memory coordination
ISS* t™ der Spalte81^ab^ISS * t ™ of column 81 ^ ab ^
welcher Ausgang MO bis M2 aktiviert , welche Anfinde-which output MO to M2 activates, which find-
wird Somit nma ^SS ?K ***?<**<&*& welche AnfordeforderuneSÄ^arbeltet ^W, der Typ der Ao-thus becomes nma ^ SS ? K ***? <** <& * & which requirements run SÄ ^ arbeltet ^ W, the type of Ao-
Wem? de? 7 ♦ Vorgeschichte bewertet gabe-Proze^™* pr(^zessor Λλαά der Eingabe-Auszu aufemanderfolgenden Entecaei-Whom? de? 7 ♦ Prehistory evaluates the input process ^ ™ * pr ( ^ processor Λλαά the input output to successive Entecaei-
ZO DO / ZO DO /
dungszeitpunkten für einen gewissen Zeitraum stets gleichzeitig Anforderungen mit den Qualifikationen Ql und Ql — 0 stellen, dann alternieren, gesteuert von einem der beiden Status-Flip-Flops die Speicherzuteilungen an die beiden Einheiten im Verhältnis 1:1. Dadurch wird erreicht, daß der Eingabe-Ausgabe-Verkehr nicht zu stark beeinträchtigt wird oder der Zentralprozessor zu wenig begünstigt wird.Application times for a certain period of time always place requirements with the qualifications Ql and Ql - 0 at the same time, then alternate, controlled by one of the two status flip-flops, the memory allocations to the two units in a ratio of 1: 1. This ensures that the input-output traffic is not impaired too much or the central processor is not favored enough.
Das erfindungsgemäße Verfahren hat folgende Vorteile: Fehlerhaft arbeitende periphere Einheiten können ohne weiteren Schaden für das Datenverarbeitungssystem unwirksam gemacht werden, wenn im Maskenregister die zugeordnete Maskenstelle entsprechend eingestellt wird. Dadurch können die Unterbrechungs- und Datenanforderungen von der peripheren Einheit nicht mehr bearbeitet werden.The method according to the invention has the following advantages: Incorrectly functioning peripheral units can be rendered ineffective without further damage to the data processing system if the assigned mask position is set accordingly in the mask register. This allows the Interrupt and data requests are no longer processed by the peripheral unit.
Eine Wartung am laufenden System ist möglich, da über die Maskenregister für ein zu überprüfendes Gerät die Unterbrechungs- und DatenanforderungenMaintenance on the running system is possible because the mask register allows for a check to be made Device the interruption and data requirements
unterdrückt werden können. Die Einstellung de Maskenregister kann dabei durch Spezialanweisun gen am Bedienungsblattschreiber in das System ein gegeben werden.can be suppressed. The setting of the mask register can be done by special instructions can be entered into the system on the operating sheet recorder.
Haltbefehle an die peripheren Einheiten erübrigei sich, da wiederum mit Hilfe der Maskenregister di< Unterbrechungs- und Datenanforderungen von peri pheren Einheiten unterdrückt werden können.Stop commands to the peripheral units are unnecessary, since again with the help of the mask register di < Interrupt and data requests from peripheral units can be suppressed.
Die Reaktionszeit auf periphere Unterbrechungs ereignisse verkürzt sich, da Unterbrechungsanforde rungen gegenüber Datenanforderungen bevorzug sind.The response time to peripheral interruption events is shortened because interruption requests are preferred over data requirements.
Der Beschäftigungsgrad der Peripherie und di< Auslastung der Summendatenrate steigen an, da Be fehle und Unterbrechungsanforderungen gegenübei Datenanforderungen bevorzugt sind.The degree of employment of the periphery and the utilization of the total data rate increase, since Be Missing and interrupt requests are preferred over data requests.
Die Reaktionszeit auf periphere Unterbrechungs· ereignisse kann in bestimmten Zentralprozessorzu· ständen garantiert werden.The reaction time to peripheral interruption events can be adjusted in certain central processor booths are guaranteed.
Hierzu 2 Blatt Zeichnungen For this purpose 2 sheets of drawings
Claims (10)
ein zweites Signal abgibt und mit einem kombi- io Es ist' schließlich bekannt, den verschiedenen natorÄchra. Netzwerk (K), das an einem ersten Arten der Anforderungen verschiedene Prioritäten zu Ausgang (E 1) bei Vorliegen von Maskenbefehlen geben. Dabei kann den verschiedenen Anforderungen ^1P-λ 8I', a" sein_em 4 zweiten Ausgang ein verschiedenes Gewicht zugeordnet werden. Die (E 2) bei Auswahl von Eingabe-Ausgabe-Befehlen Abarbeitung der verschiedenen Anforderungen er- ?™Τ· A8L, anrfmem dritten Ausgani 1S folgt dann entsprechend ihrem Gewicht, Bei dem (£3) bei Auswahl von Unterbrechungsanforde- bekannten Verfahren ist jedoch nicht angegeben, rungen ein Signal abgibt, und das an einem vier- welchem Anforderungstyp welche Priorität zugeordten Ausgang (E 4) bei Auswahl von Datenanfor- net wird. Es ergibt sich auch nicht, ob die Abarbeiderungen ein Signal abgibt. tung von Anforderungen nicht auch nach anderentreated with a first signal when N <Ξ P 1 and treated with N > P 1
emits a second signal and with a combi- io It is' finally known the different natorÄchra. Network (K), which give different priorities to output (E 1) when mask commands are present on a first type of request. In this case, the different requirements ^ 1 P-8 I λ 'be a "_ em 4 zwe ith output a different weight to be assigned. The (E 2) for selecting input-output commands ER processing of the various requirements? ™ Τ · A 8 L, an rf mem third output g an i 1 S then follows according to its weight, In the case of the (£ 3) with the selection of interrupt request, however, known method is not specified, rungen emits a signal, and that on a four - which type of request is the priority net zugeordten output (E4) when selecting Datenanfor- It also does not arise if the Abarbeiderungen emits a signal processing requests not to others..
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19732325687 DE2325687C3 (en) | 1973-05-21 | Method and device for determining the order in which several requests of various types made by several units of a data processing system to a unit of the data processing system are processed by a queue control | |
GB2101974A GB1473581A (en) | 1973-05-21 | 1974-05-13 | Data processing systems |
IT2272974A IT1012372B (en) | 1973-05-21 | 1974-05-15 | DEVICE FOR ESTABLISHING THE ORDER OF SUCCESSION IN WHICH COMPLEXES IN COMPETITION WITH A DATA PROCESSING SYSTEM MUST BE PROCESSED THE REQUESTS ADDRESSED TO A COMPLEX OF THE DATA PROCESSING SYSTEM |
FR7417473A FR2231050B1 (en) | 1973-05-21 | 1974-05-20 | |
NL7406760A NL7406760A (en) | 1973-05-21 | 1974-05-20 | |
BE144584A BE815352A (en) | 1973-05-21 | 1974-05-21 | PROCEDURE FOR FIXING THE SUCCESSION OF PROCESSING OF REQUESTS SUBMITTED TO A DATA PROCESSING UNIT |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19732325687 DE2325687C3 (en) | 1973-05-21 | Method and device for determining the order in which several requests of various types made by several units of a data processing system to a unit of the data processing system are processed by a queue control |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2325687A1 DE2325687A1 (en) | 1974-12-12 |
DE2325687B2 DE2325687B2 (en) | 1976-05-13 |
DE2325687C3 true DE2325687C3 (en) | 1976-12-30 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0179936B1 (en) | Method and apparatus for global bus control | |
DE3043894C2 (en) | ||
DE3300263C2 (en) | ||
DE3300262C2 (en) | ||
DE2847216C2 (en) | Data processing system with multi-program operation | |
EP0006164B1 (en) | Multiprocessor system with jointly usable storages | |
EP0048767A1 (en) | Priority stage controlled interruption device | |
DE1424762B2 (en) | DATA PROCESSING SYSTEM | |
DE2164793A1 (en) | Method and data processing system for controlling a large number of input / output units by means of a central unit | |
DE2758023B2 (en) | Connection circuit for an input / output interface of a data processing system | |
DE2003150C3 (en) | Priority switching | |
DE2064383B2 (en) | Data processing system with several central processing devices | |
EP0466948B1 (en) | Communications system with a multi-processor system serving as the central control | |
EP0419723B1 (en) | Method and interrupt controller for treating i/o operation interrupt requests in a virtual machine system | |
EP0110199B1 (en) | Method for the control of data transfer between a data transmitter and a data receiver on a bus, using a control unit which is connected to the bus | |
DE2325687C3 (en) | Method and device for determining the order in which several requests of various types made by several units of a data processing system to a unit of the data processing system are processed by a queue control | |
EP1121645A1 (en) | Electronic control device comprising a parallel databus, and a method for operating the control device | |
DE3204098C2 (en) | ||
DE2607685C3 (en) | Method for operating processors in a multiprocessor system | |
DE10324687B4 (en) | Method for blocking a request to a bus | |
DE3325791C2 (en) | Circuit arrangement for peripheral units cooperating with a central control device | |
DE2325687A1 (en) | PROCEDURE FOR DETERMINING THE ORDER IN WHICH REQUESTS MADE BY COMPETING UNITS OF A DATA PROCESSING SYSTEM TO A UNIT OF THE DATA PROCESSING SYSTEM ARE PROCESSED | |
EP0021254B1 (en) | Method and apparatus for connecting several central processors to data storage devices via one or other of at least two peripheral processors | |
EP0586847B1 (en) | Method for interrupt control of processes in communication systems | |
EP0360897B1 (en) | Method and apparatus for treating interrupt requests and process calls in a combined interrupt and sequence controlled system in data processing systems working at least partially in real time |