DE2249996A1 - Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem - Google Patents

Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem

Info

Publication number
DE2249996A1
DE2249996A1 DE19722249996 DE2249996A DE2249996A1 DE 2249996 A1 DE2249996 A1 DE 2249996A1 DE 19722249996 DE19722249996 DE 19722249996 DE 2249996 A DE2249996 A DE 2249996A DE 2249996 A1 DE2249996 A1 DE 2249996A1
Authority
DE
Germany
Prior art keywords
priority
access requests
arrangement according
access
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.)
Pending
Application number
DE19722249996
Other languages
English (en)
Inventor
Lothar Dipl Ing Jantz
Horst Dipl Ing Linge
Hilmar Dipl Ing Nolte
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.)
Licentia Patent Verwaltungs GmbH
Original Assignee
Licentia Patent Verwaltungs GmbH
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 Licentia Patent Verwaltungs GmbH filed Critical Licentia Patent Verwaltungs GmbH
Priority to DE19722249996 priority Critical patent/DE2249996A1/de
Publication of DE2249996A1 publication Critical patent/DE2249996A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • G06F9/4831Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Multi Processors (AREA)

Description

  • Anordnung zur prioritätsgerechten Steuerung einer Mehrzahl von Zugriffsminschen in einem Datenverarbeitungssystem Die vorliegende Erfindung betrifft eine Anordnung zur prioritätsgerechten Steuerung einer Mehrzahl von Zugriffswiinschen mindestens eines Zugreifers auf mindestens einen Zielort in einem Datenverarbeitungssystem, bei dem die Zugriffswünsche in einer Eingangsschaltung einer fest vorgegebenen Rangordnung entsprechend zur Abarbeitung bereit gehalten werden.
  • Anordnungen der genannten Art sind im allgemeinen als Vorrangwerke oder Prioritätsschaltungen bekannt und im Rahmen der Datentechnik immer dann von besonderem Interesse, wenn zu ein und demselben Zeitpunkt eine Mehrzahl von Zugriffswinschen ansteht. Im allgemeinen würde dieser Umstand an sich keine Vorrangscha#ltung erfordern, jedoch im Falle mehrerer gleichzeitig anstehender Zugriffswünsche zu beispielsweise ein und demselben Zielort werden sich ohne übergeordnete Auswahleinrichtung Sonfliktsituationen ergeben.
  • Ein spezieller Anwendungsfall betrifft eine Datenverarbeitungsanlage,bei der mit unterschiedlicher Priorität versehene Programme abgewickelt werden und das jeweils laufende Programm durch ein Unterbrechungssignal aufgrund eines Vergleichs der Priorität des laufenden mit der eines zur Bearbeitung anstehenden Programms eventuell unterbrochen wird.
  • Die bekannten Vorrangwerke oder Prioritätsschaltungen sind dadurch gekennzeichnet, daß eine Vielzahl von Leitungen, über die sogenannte Zugriffswünsche entgegengenommen werden, in einer fest vorgegebenen Ordnung zueinander angeordnet sind und die entgegengenommenen Zugriffswünsche dieser Ordnung entsprechend zur Ausführung bringen.
  • stets Unter einem Zugriffswunsch soll hierbei/ein Signal verstanden werden, das den Wunsch eines Zugreifers signalisiert, mit einem Zielort in Verbindung zu treten. So wird z.B. der Datenverarbeitungseinheit das Anstehen eines neuen Programms oder Programmabschnitts mitgeteilt.
  • Oder es zeigen mehrere Rechnerkerne ihren Wunsch an, aus dem gemeinsam benutzten Speicher Daten zu beziehen.
  • In allen Fällen kommt es darauf an, durch gegebenenfalls gleichzeitig anstehende Zugriffswünsche bedingte Konfliktsituationen in einem Datenverarbeitungssystem zu vermeiden. Eine etwaige Warteschlange soll rasch und rangordnungsgemäß aufgelöst werden.
  • Als Rangordnung hinsichtlich der Zugriffswünsche kann deren zeitliches Eintreffen, die Bedeutung des bzw. der Zugreifer oder auch die Bedeutung der im Zugriffswunsch beinhalteten Operation zugrunde gelegt werden. In allen Fällen werden die Zugriffswünsche der fest vorgegebenen Rangordnung gemäß abgearbeitet, wobei beispielsweise aus allen zu einem bestimmten Zeitpunkt anstehenden Zugriffswmnschen der jeweils vorrangigste ausgewählt wird.
  • Benutzt man hierbei ein Vorrangwerk, so wird jeweils der in der vorrangigste Zugriffswunsch Hierarchie der Anordnung /zuerst abgearbeitet. Die Wartezeit eines Zugreifers hängt von dessen Rang und von der Zugriffsrate der Zugreifer höherer Priorität ab. Die längste Wartezeit ergibt sich also nicht durch die Struktur des Vorrangwerkes, sondern ist vom Gesamtsystem abhängig.
  • Ein Nachteil bei den bekannten Vorrangwerken ist der, daß Zugriffswünsche sehr geringer Priorität möglicherweise außerordentlich selten erfüllt werden. Gibt es stets Zugriffswünsche hoher Priorität, so werden diese entsprechend der Struktur des Vorrangwerkes bevorzugt behandelt, so daß die Zugriffswünsche geringerer Priorität nicht erfüllt werden. Dadurch können unzulässig lange Wartezeiten für die Zugriffswünsche geringer Priorität auftreten.
  • Es ist bereits eine Prioritätsschaltung vorgeschlagen worden (DT-OS 2 003 150), bei der jeweils mehrere Zugriffswünsche gruppenweise zur Abarbeitung bereit gehalten und zyklisch abgefragt werden und wobei innerhalb einer Gruppe der vorrangigste Zugriffswunsch ermittelt wird.
  • Ebenso ist eine Prioritätensteuerung vorgeschlagen worden (DT-OS 2 031 040), bei der die Zugriffswünsche relativ zueinander eine gleichbleibende Rangfolge haben und in dieser Reihenfolge abgearbeitet werden. Diese Prioritätensteuerung wird über einen Zähler angestoßen, der nach jedem Zähltakt um einen Schritt weitergeschaltet wird. Entsprechend dieser Steuerung ist der Anfang der Prioritätenfolge jeweils durch den Stand des Zählzyklus festgelegt.
  • Die Rangfolge ist hierbei insoweit veränderlich, als gegebenenfalls einem bestimmten Zugriffswunsch höchste Priorität zugeordnet werden kann. Die benachbarten Zugriffswünsche sind damit jedoch bezüglich ihrer Priorität ebenfalls festgelegt - ein Nachbar hat die niedrigst. Priorität, der andere Nachbar die zweithöchste.
  • Hinsichtlich Datenverarbeitungsanlagen, bei denen ein laufendes Programm unterbrochen wird, um ein Programm höherer Dringlichkeit durchzuführen, ist es bekannt (DT-OS 1 474 063)-, über ein Maskenregister bestimmte Unterbrechungsbedingungen selektiv auszuschalten.
  • Es ist auch bereits ein Unterbrechungs-Direktorschaltwerk bekannt (DT-AS l 549 532>, bei dem die den unterbrechenden Geräten zugeordneten vorhänge dynamischen Änderungen unterworfen sind Diese dynamischen Änderungen sind jedoch direkt abhängig vom Programmablauf, d.h. sie passen sich jeweils automatisch dem Systemzustand an.
  • Ferner ist eine Vorrangsteuerung für ein Mehrrechnersystem bekannt (DT-AS l 234 059), gemäß der die Rechner ihre Vorrangmerkmale per Programm angeben. Aus Zeitgründen werden diese Vorrangmerkmale jedoch schaltungstechnisch und nicht durch Programme ausgewertet.
  • Den bekannten Anordnungen zur Steuerung einer ~Mehrzahl von Zugriffswünschen ist der Nachteil gemeinsam, daß die relative Rangordnung der Zugriffswünsche zueinander fest vorgegeben ist und -wie bei der Anwendung eines Masken registers selektiv zu ändern ist. Es kann so-mit die Gefahr einer Majorisierung durch einen sehr -vQrrangigen Zugriffs, wunsch bestehen. Bei Anwendung des Prinzips der zyklischen Abfrage wird zwar jeder Zugriffswunsch erfüllt, jedoch ist eventuell sehr untergeordneten Zugriffswünschen unverhältnismäßig viel Zeit vorbehalten.
  • Benutzt man gemäß der Mehrrechnersteuerung eine programmierte Vorrangangabe, so muß bei gegebenenfalls geänderten Vorrangverhältnissen das jeweilige Vorrangprogramm geändert werden, was hinsichtlich der Auswertung auch für die Auswerteschaltung Konsequenzen hat.
  • Der spezielle Hintergrund der vorliegenden Erfindung ist in der Technik der Prozeßrechnersysteme zu suchen. Hierbei wird beispielsweise eine Vielzahl von Meßdaten per Programm ausgewertet. Wird den einzelnen Meßstellen bezüglich ihrer Berücksichtigung eine unterschiedliche Dringlichkeit beigemessen, so kann entsprechend der Zahl der Meßstellen und deren relativer Vorrangigkeit ein Vorrangschema aufgebaut werden, das die prioritätsgerechte Berücksichtigung der Meßdaten garantiert. Dabei muß gewährleistet sein, daß ein gerade laufendes Programm durch eine relativ dazu vorrangigere Eleßgröße jederzeit unterbrochen werden kann.
  • Bei bestimmten Prozessen ändert sich im Verlauf des Prozesses die relative Vorrangigkeit der Meßdaten zueinander. War bis zu einem bestimmten Zeitpunkt dem Anstieg der Temperatur bevorzugtes Augenmerk zu schenken, so kann später beispiels weise der Druck als wichtigste Meßgröße mit größter Vorrangigkeit zu behandeln sein.
  • Die besondere Aufgabe der Erfindung war es somit, eine Anordnung zur prioritätsgerechten Steuerung einer Mehrzahl von Zugriffswunschen zu entwickeln, die in einfacher Weise geänderten Verhältnissen anpaßbar ist. Mit der erfindungsgemäßen Anordnung kann jederzeit die Zuordnung der Zugriffswünsche zueinander verändert werden, wobei im Grunde nur darauf zu achten ist, daß jeder Rang innerhalb der fest vorgegebenen Rangordnung auch nach deren Auflösung nur einmal vorkommt.
  • Die der Erfindung zugrunde liegende Aufgabe wird dadurch gelöst, daß frei adressierbare Speichermittel vorgesehen sind, mittels denen die vorgegebene Rangordnung der Eingangsschaltung veränderbar ist, und daß Schaltmittel vorgesehen sind, mittels denen der jeweils vorrangigste Zugriffswunsch auswählbar ist.
  • Weitere Merkmale der Erfindung ergeben sich aus den Unteransprüchen.
  • Die Erfindung wird im folgenden anhand der in den Zeichnungen dargestellten Ausführungsbeispiele näher erläutert.
  • Fig. 1 zeigt ein erstes Ausführungsbeispiel einer erfindungsgemäßen Anordnung, die durch ein Minimum an Schaltelementen, jedoch relativ hohen Zeitaufwand gekennzeichnet ist; Fig. 2 zeigt ein zweites Ausführungsbeispiel einer erfindungsgemäßen Anordnung, die den jeweils vorrangigsten Zugriffswunsch zwar sehr schnell zu ermitteln vermag, jedoch einen hohen Schaltungsaufwand erfordert.
  • In Fig. 1 ist ein Register R dargestellt, das in bevorzugter Ausführungsform aus bistabilen Kippstufen xnd zwar insbesondere aus R-S-Kippstufen aufgebaut ist.
  • Sind z.B. gleichzeitig insgesamt n Zugriffswünsche Z1**-z n möglich, so sind zum Aufbau des Registers R ebenfalls n Flipflops notwendig, die an ihren Setzeingängen die Zugriffswünsche Z. entgegennehmen und an ihren Ausgängen zur Abarbeitung bereithalten (i = 1...n).
  • Bezüglich der Zeitverhältnisse für die Entgegennahme der Zugriffswünsche ist die erfindungsgemäße Anordnung keinen besonderen Beschränkungen unterworfen. Es muß nur darauf Rücksicht genommen werden, daß aus den zu einem bestimmten Zeitpunkt anstehenden Zugriffswünschen der vorrangigste ausgewählt ist, ehe #egebenenfalls neue Zugriffswunsche entgegengenommen werden.
  • Betrachtet man den Ausgangszustand eines Prozeßrechnersystems und geht man davon aus, daß die durch die relative Anordnung der Kippstufen im Register R gegebene Rangordnung der Bedeutung möglicher Zugriffswünsche Z. entspricht, so werden die entgegengenommenen Zugriffswünsche Z. in dieser durch das Register R bestimmten Rangfolge abgearbeitet. Ordnet man den Zugriffswünschen Z . Z je eine Meßstelle n zu, so soll im Ausgangszustand der Zugriffswunsch Z1 höchste und der Zugriffswunsch Zn niederste Priorität haben. Fragt man die Ausgänge der Flipflops zyklisch ab, so läßt sich eine Majorisierung der niederrangigen Zugriffswinsche durch höherrangige Zugriffswünsche vermeiden.
  • Mit dem Prozeßablauf soll sich nun die relative Bedeutung der Meßstellen und damit der Zugriffswinsche zueinander verändern, wobei jedoch weiterhin alle Meßstellen in irgendeiner Weise zu berücksichtigen sind.
  • Die erfindungsgemäße Anordnung ist geeignet, solchen Veränderungen in einfacher Weise Rechnung zu tragen.
  • Zu diesem Zweck werden die n Ausgänge des Registers R einem Kodierer K zugeführt, der ein dem jeweils speziellen Ausgang entsprechendes Adreßwort erzeugt. Bei n Ausgängen ist zur eindeutigen,z.B. dual codierten Adreßangabe ein Adrenwort mit log2n Bits notwendig. Mit diesemAdreßwort werden n zweidimensionale Matrixspeicher Sp1...Spn angesteuert, die für jeden Zugriffswunsch Z. eine eine aktuelle Ausführungspriorität charakterisierende Bitfolge abgeben.
  • Unter Ausführungspriorität soll im vorliegenden Fall eine veränderliche Größe verstanden werden, die einem geänderten Svstemzustand entsprechend einem bestimmten Zugriffs wunsch Z. zugeordnet ist. Durch die erfindungsgemäße Anordnung und Ausgestaltung der Matrixspeicher Spi lassen 1 sich diese Ausführungsprioritäten diskret verändern.
  • Die jeweils verbleibende Aufgabe besteht darin, aus den im Register R anstehenden Zugriffswünschen Z. den mit der jeweils höchsten Ausführungspriorität und gegebenenfalls die nächstfolgenden auszuwählen.
  • Dazu wird die entsprechend dem Adreßwort eines Zugriffswunsches Z. aus den n Matrixspeichern Spi ausgelesene n-stellige Bitfolge einem Vergleicher V übermittelt, in dem die einer aktuellen Ausführungspriorität entsprechende Bitfolge mit einer in einer Speicherzelle AP abgespeicherten ebenfalls n-stelligen Bitfolge verglichen wird.
  • Diese in der Speicherzelle AP zum besagten Vergleich bereitstehende Bitfolge soll zu Beginn einen Ausgangszustand charakterisieren, der im einfachsten Fall durch eine Nullfolge bestimmt ist In diesem Fall wird der erste untersuchte und registrierte Zugriffswunsch aufgrund der Tatsache, daß ihm eine Ausführungspriorität zukommt, in die Speicherzelle AP übernommen. Zur Übernahme selbst sind n UND-Glieder Uii vorgesehen, deren einer Eingang mit dem Ausgang je eines Matrixspeichers Spi verbunden ist und deren zweite Eingänge mit einem Signalausgang des Vergleichers V verbunden sind.
  • Die Ausführungspriorität des zuerst untersuchten, im Register R also höchstwertigen Zugriffswunsches hat eine von einer Nullfolge abweichende charakteristische Bitfolge. Der Vergleich erbringt somit ein positives Vergleichsergebnis. Daraufhin entsteht am Signalausgang des Vergleichers V ein Ausgangssignal, das die Übertragung der an den Matrixspeichern Sp. anstehenden Bitfolge in die Speicherzelle AP vermittelt.
  • Es besteht durchaus die Möglichkeit, daß die einen Ausgangszustand charakterisierende Bitfolge keine Nullfolge ist.
  • Dieser Fall kann beispielsweise dann interessant sein, wenn sehr niederrangige Zugriffswünsche nicht berücksichtigt werden sollen. Auf diese Weise läßt sich bezüglich der Bedeutung der Zugriffswünsche gewissermaßen ein Schwellwert einstellen, bis zu dem hin Zugriffswünsche gar nicht ins Kalkül gezogen werden sollen.
  • Dieser spezielle Fall ist beispielsweise dann denkbar, wenn eine Programmunterbrechung nur bei relativ großer Bedeutung des Unterbrechungswunsches durchgeführt werden soll. In diesem Fall soll die nach Untersuchung aller zu einem bestimmten Zeitpunkt anstehenden Zugriffswünsche in der Speicherzelle gespeicherte maximale Ausführungspriorität mit der Priorität des gerade laufenden Programms verglichen werden. Hierbei soll die Ausgangsstellung in der Speicherzelle so sein, daß sie die Priorität des laufenden Programms charakterisiert. Bei der Untersuchung der im Register anstehenden Zugriffswunsche werden letztlich nur die registriert, deren Ausführungsprioritäten höher sind als es die Priorität des laufenden Programms angibt.
  • Ist also eine Ausführungspriorität größer als es der In der Speicherzelle AP angegebenen Bitfolge entspricht, so wird die Bitfolge dieser Ausführungspriorität in die Speicherzelle AP übernommen. Um gleichzeitig auch den Rang des entsprechenden Zugriffs###iinsches Z. zur Verfügung zu haben, wird mit jedem Ausgangssignal des Vergleichers V die Adresse des speziellen Zugriffswunsches in einen Adreßspeicher ADR übernommen. Hierzu ist für jede Adreßleitung je ein UND-Glied U vorgesehen, 10 deren erste Eingänge jeweils mit einem Ausgang des Xodierers K und deren zweite Eingänge mit dem Signalausgang des Vergleichers V verbunden sind.
  • I#t die Ausführungspriorität eines Zugriffswunsches Zi größer als es die momentan in der Speicherzelle AP Max gespeicherte Bitfolge angibt, so wird die Adresse des Zugriffswunsches in den Adreßspeicher ADR iibernommen.
  • sind schließlich alle in einem Zeitintervall entgegengenommenen Zugriffswünsche Zi hinsichtlich ihrer Ausführungspriorität überprüft, so steht die der Ausführungspriorität des höchstrangigen Zugriffswunsches entsprechende Bitfolge in der Speicherzelle AP an und das zugehörige Adreßwort im Adreßspeicher ADR.
  • tn den zugeordneten Zugriffswunsch Z. unmittelbar nach der Untersuchung des im Register zuletzt stehenden Zugriffswunsches Z aktivieren zu können, ist dem Adreßspeicher n ein Dekodierer D nachgeschaltet. Dieser dekodiert das jeweils in den Adreßspeicher ADR übernommene Adreßwort und ist mit den Rücksetzeingängen der Kippstufen des registers R so verbunden, daß bei Übernahme eines Adreßortes in den Adreßspeicher ADR die Zugriffswünsche höherrangiger Registerstufen zurückgenommen werden. Somit ist nach der Untersuchung des letzten Zugriffswunsches die dem höchstrangigen Zugriffswunsch zugeordnete Kippstufe in eindeutiger Weise identifiziert.
  • Entsprechend der in Fig. 1 dargestellten Anordnung sei ein Annahmezeitintervall fiir die Entgexennahme der Zuriffswiinschc zugrunde gelegt. Dieses Zeitintervall wird JeweilS von einer inaktiven Taktphase abgelöst, die mindestens so lange andauert, bis alle Ausgänge der Kippstufen des Registers R abgefragt sind. Eine spezielle Ausgestaltung der Taktmittel zur Erzeugung der aktiven und inaktiven Taktphase sei dadurch gekennzeichnet, daß nach dem Durchlaufen aller Register~ stufen die Taktmittel für die Dauer des Annahmezeitintervalls aktiviert werden. Durch diesen Start-Stop-Betrieb der Taktmittel läßt sich die Durchsatzmenge von Zugriffs-«~aschen deren Zugriffsraten, also deren Häufigkeit anpassen.
  • Bei diesem speziellen Ausführungsbeispiel wird die inaktive Taktphase beispielsweise bei m entgegengenommenen Zugriffswünschen kürzer sein als bei mehr als m. Dies gilt natürlich nur unter der Voraussetzung, daß bei der Abfrage der Registerstufen, solche die keinen Zugriffswunsch gespeichert haben, direkt übergangen werden.
  • Um den eingangs erwähnten Nachteil der bekannten Vorrangsteuerungen zu vermeiden#, kann das Register so ausgebildet werden, daß jeweils nur die abgearbeiteten Zugriffswünsche gelöscht werden. Auf diese Weise kann sichergestellt werden, daß alle entgegengenommenen Zugriffswünsche in der ihnen durch die Matrixspeicher zugeordneten Reihenfolge der Ausführungsprioritäten abgearbeitet werden.
  • Mit der Erfüllung des letzten der in einem Zeitintervall entgegengenommenen Zugriffswunsches kann wiederum ein Annahmezeitintervall ausgelöst werden.
  • Entsprechend dem in Fig. 2 dargestellten Ausführungsbeispiel ist zur Entgegennahme der Zugriffswünsche Zil bzw.
  • der sie repräsentierenden Signale ebenfalls ein vorzugsweise aus R-S-Kippstufen aufgebautes Eingangsregister R vorgesehen. Die Setzeingänge dieser R-S-Kippstufen nehmen die Zugriffswünsche Z. auf.
  • An den korrespondierenden Ausgängen werden die Zugriffswünsche Z zum Zwecke der Auswahl des jeweils vorrangigsten bereit gehalten.
  • Die den R-S-Kippstufen und damit den zugeordneten Zugriffswünschen Zi jeweils entsprechenden Ausführungsprioritäten sind gemäß Fig. 2 durch äquivalente Bitfolgen in Registern R.
  • abgespeichert. Diese sind aus einer Mehrzahl von ebenfalls vorzugsweise R-S-Kippstufen aufgebaut, wobei jedem Register R.
  • parallel oder seriell eine geänderte Bitfolge eingeschrieben werden kann. Damit läßt sich den Kippstufen des Eingangsregisters R jeweils eine bestimmte Ausführungspriorität zuordnen. Wie bereits erwähnt, muß eine Bitfolge,die einen von n Zugriffswünschen Z. in eindeutiger Weise charakterisiert, mindestens log2 n Bits aufweisen. Entsprechend sind die Register R. zur Speicherung der Ausführungsprioritäten ebenfalls aus log2 n Kippstufen aufgebaut.
  • Gemäß der erfindungsgemäßen Anordnung ist nun jedem der Register II ein Dekodierer D. zugeordnet, der entsprechend 1 1 den Registern Ri log2 n Eingänge und n Ausgänge aufweist.
  • Entsprechend den n verschiedenen Ausführungsprioritäten, die in den n Registern R. abgespeichert sind, ist je Dekodierer D. einer der n Ausgänge aktiviert; aus der Gesamtzahl der n---x n Dekodiererausgänge sind insgesamt n Ausgänge mit einem Ausgangssignal beaufschlagt.
  • Zur Bestimmung des jeweils vorrangigsten Zugriffswunsches müssen die Ausgangssignale der Kippstufen des Eingangsregisters R mit den n x n möglichen Ausgangssignalen der Dekodierer D. verknüpft werden, so daß jedem Zugriffswunsch ein Vorrangmerkmal zugeordnet ist.
  • Zu diesem Zweck sind den Dekodierern D. jeweils n UND-Glieder U U mit je zwei Eingängen und einem Ausgang zugeordnet. Ein Eingang ist jeweils mit einem Ausgang eines Dekodierers D. verbunden, der zweite Eingang ist bezüglich der einem Dekodierer D. zugeordneten Gruppe von UND-Gliedern Uli.,,U mit dem Ausgang der diesem Dekodierer D.
  • 11 1 zugeordneten Kippstufe des Eingangsregisters R verbunden.
  • Durch diese Verdrahtung ist gewährleistet, daß jedem Zugriffswunsch ein eindeutiges Vorrangmerkmal beigegeben ist. Ein UND-Glied U1i...Uni aus der Gruppe der einem Dekodierer-Di zugeordneten UND-Glieder gibt - vorausgesetzt es sind n Zugriffswünsche angenommen worden - ein Ausgangssignal ab.
  • Aus der Mehrzahl dieser Ausgangssignale muß das entsprechend der zugeordneten Ausführungsprioritäten vorrangigste ausgewählt werden.
  • Dazu werden die Ausgänge der bezüglich der Zuordnung.
  • zu den Dekodiererausgängen gleichrangigen UND-Glieder U1i...Uni nn disjunktiv verknüpft.
  • in jeweils einem ODER-Glied Oii###O Diese ODER-Glieder haben jeweils n Eingänge und einen Ausgang, wobei bei eindeutigen Zuordnungen von Ausführungsprioritäten zu ein und demselben Zeitpunkt nur ein Eingang eines ODER-Gliedes ein Signal eines UND-Gliedes empfangen darf.
  • Die n ODER-Glieder °11***°nn sind ihrer Rangfolge gemäß angeordnet. Um zu einem bestimmten Zeitpunkt jeweils nur ein Freigabesignal für einen Zugriffswunsch zu erhalten, müssen die Ausgangssignale der ODER-Glieder zeitlich aufgelöst werden. Zu diesem Zweck ist eine konventionelle Prioritätsschaltung VP vorgesehen, die die Ausgänge der ODER-Glieder . h so miteinander verknüpft, daß der vorrangigste nn Zugriffswunsch Zi erkennbar wird. Von den n Ausgängen der Prioritätsschaltung VP sind jeweils insgesamt ebensoviele bar aktivier/, wie in einem Annahmezeitintervall Zugriffswünsche Zi entgegengenommen wurden.
  • Zur Freigabe des höchstrangigen Zugriffswunsches wird das höchstrangige Ausgangssignal der Prioritätsschaltung VP n UND-Gliedern Uiii###Uinn mit zwei Eingängen und einem Ausgang zugeführt, wobei der zweite Eingang jeweils mit dem Ausgang der den Dekodierern D. nachgeschalteten und in der hierarchischen Ordnung gleichrangigen- UND-Glieder Uli...Uni verbunden ist. Somit führt jeder der n Ausgänge der Prioritätsschaltung VP auf ebenfalls n UND-Glieder, so daß zu einem vorgegebenenEntscheidungsze#itpunkt nur eines der n x n UND-Glieder Uili...Uinn ein Ausgangssignal abgibt.
  • Faßt man diese UND-Glieder jeweils gruppenweise zusammen, wobei jede Gruppe aus n UND-Gliedern besteht, so kann durch die Zuordnung jeweils einer Gruppe zu einer Kippstufe des Eingangsregisters R der entsprechende Zugriffswunsch Z.
  • aktiviert werden. In einer bevorzugten Ausführungsform kann jeder Gruppe von UND-Gliedern wiederum ein ODER-Glied O; mit n Eingängen nachgeschaltet werden. Nach Überprüfung der entgegengenommenen Zugriffswünsche Z. steht an einem dieser ODER-Glieder O.
  • 1 1 ein Freigabesignal V. an, womit der Zugriffswunsch unmittelbar zu aktivieren ist.
  • Bezüglich der Ausgestaltung des Eingangsregisters R und der Prioritätssc»haltung VP seien folgende Details erwähnt.
  • Soll der eingangs erwähnte Nachteil bekannter Vorrangsteuerwerke, nämlich die Majorisierung niederrangiger Zugriffswünsche vermieden werden, so kann gewährleistet werden, daß die entgegengenommenen Zugriffswünsche sämtlich gemäß ihre#n Ausführungsprioritäten zur Ausführung kommen. Dazu werden die Ausgänge der Prioritätsschaltung VP zyklisch abgefragt. Mit jedem Schritt des Abfragezyklus' wird an einem der nachgeschalteten UND bzw. ODER-Glieder ein Freigabesignal erzeugt.
  • Nimmt man die Majorisierung niederrangiger Zugriffswünsche in Kauf, so werden jeweils die im Eingangsregister gespeicherten Zugriffswünsche gelöscht, wenn einer und zwar der vorrangigste Zugriffswunsch erfüllt wird. Mit jedem Annahmezeitintervall wird aus den jeweils aktuellen Zugriffswünschen der vorrangigste ausgewählt.
  • Es wurden zwei Ausführungsbeispiele einer Anordnung beschrieben, die in erfindungsgemäßer Weise eine Umorganisation einer an sich fest vorgegebenen Reihenfolge von zu berücksichtigenden Ereignissen erlaubt. Die Speichermittel zur Lösung dieser Aufgabe sind einfach zu realisieren und geänderten Verhältnissen entsprechend über einen in den Figuren dargestellten Kabelbaum AP mit neuen Informationen überschreibbar, so daß jederzeit die aktuellen Au~führungsprioritäten für das Gesamtsystem bestimmend sind.

Claims (14)

P a t e n t a n s p r ii c h e
1. Anordnung zur prioritätsgerechten Steuerung einer Mehrzahl von Zugriffswünschen mindestens eines Zugreifers auf mindestens einen Zielort in einem Datenverarbeitungssystem, bei dem die Zugriffswünsche in einer Eingangs schaltung einer fest vorgegebenen Rangordnung entsprechend zur Abarbeitung bereit gehalten werden, dadurch xekennzeichnet, , daß frei adressierbare Speichermittel vorgesehen sind, mittels denen die vorgegebene Rangordnung der Eingangsschaltung veränderbar ist und daß Schaltmittel vorgesehen sind, mittels denen der jeweils vorrangigste Zugriffswunsch auswählbar ist.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß zur Steuerung von n Zugriffswünschen (Zi) n Uilfsspeicher (Spi ; Ri) vorgesehen sind, über deren gespeicherte Information den inder vorgegebenen Rangordnung eingeordneten Zugriffswünschen (Zi) je eine aktuelle Ausführungspriorität zuordenbar ist.
3. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß die Hilfsspeicher durch zwei"dimensionale Matrixipeicher (Spi) realisiert sind, von denen jeder ein Bit einer eine aktuelle Ausführungspriorität repräsentierenden Bitfolge abgibt.
4. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß der Eingangs schaltung ein Kodierer (K) mit n Eingängen nachgeschaltet ist, welcher ein dem Rang eines Zugriffswunsches (Z.) innerhalb der vorgegebenen Rangordnung entsprechendes Adreßwort erzeugt, mit dem seinerseits die Matrixspeicher (SPj) angesteuert und zur Abgabe der die Ausführungspriorität des betreffenden Zugriffswunsches repräsentierenden Bitfolge angestoßen werden, und daS eine Vergleichsschaltung (V) vorgesehen ist, die die einem Zugriffswunsch (Z.) zugeordnete Bitfolge jeweils mit einer in einer Speicherzelle (APMax) gespeicherten Bitfolge, die zu Beginn einem Ausgangszustand entspricht und im Verlauf jeweils die Ausführungspriorität des aus der Zahl der jeweils bereits untersuchten Zugriffswünsche als vorrangigst identifizierten Zugriffswunsches repräsentiert, vergleicht und im Falle einer die Priorität der momentan gespeicherten Bitfolge über steigenden Ausführungspriorität ein Ausgangssignal abgibt, das einerseits die Übernahme der gerade überprüften Ausführungspriorität in die Speicherzelle (AP ) und andererseits die Übernahme des Max dieser Ausführungspriorität zugeordneten Adreßwortes in einen Adreßspeicher (ADR) aktiviert, so daß nach Prüfung aller anstehenden Zugriffswünsche das Adreßwort des bezüglich seiner aktuellen Ausführungspriorität vorrangigsten Zugriffswunsches zur Verfügung steht.
5. Anordnung nach Anspruch 4, dadurch gekennzeichnet, daß die Eingangsschaltung aus einem aus R-S-Kippstufen aufgebauten Eingangsregister (R) besteht, das die Zugriffswünsche (Z) parallel entgegennimmt, abspeichert und in der durch die Stufen des Eingangsregisters (R) vorgegebenen Rangordnung seriell an den Kodierer (K) weitergibt.
6. Anordnung nach Anspruch 5, dadurch gekennzeichnet, daß dem Adreßspeicher (ADR) ein Dekodierer (D) nachgeschaltet ist, der die Adreßworte der jeweils als vorrangig identifizierten Zugriffswünsche (Z.) dekodiert und so auf das Eingangsregister (R) einwirkt, daß alle im Eingangsregister (R) anstehenden niederrangigeren Zugriffswünsche gelöscht werden.
7. Anordnung nach Anspruch 5, dadurch gekennzeichnet, daß das Eingangsregister (R) so ausgebildet ist, daß von den entgegengenommenen Zugriffswünschen (Zi) jeweils der gelöscht wird, der aufgrund seiner Ausführungspriorität zur Abarbeitung freigegeben wurde.
8. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß die Hilfsspeicher durch Register (R ) realisiert sind, von denen jedes eine kodierte Angabe über die entsprechende aktuelle Ausführungspriorität enthält.
9. Anordnung nach Anspruch 8, dadurch gekennzeichnet, daß die Eingangs schaltung aus einem aus R-S-Kippstufen aufgebauten Eingangsregister (R) besteht, das die Zugriffswünsche (Zi) parallel entgegennimmt, abspeichert und zwecks Bestimmung des bezüglich der Ausführungspriorität vorrangigsten Zugriffswunsches parallel abgibt.
10. Anordnung nach Anspruch 9, dadurch gekennzeichnet, daß zur Übernahme der Zugriffswünsche (Zi) aus dem Eingangsregister (R) je Registerstufe n erste Konjunktionsglieder (U1l, U12...Unn) mit je zwei Eingängen und einem Ausgang vorgesehen sind, wobei jeweils ein Eingang mit dem Ausgang einer Registerstufe des Eingangsregisters (R) und der jeweils zweite Eingang mit einem von n Ausgängen-eines die jeweils zugeordnete aktuelle Ausführungspriorität dekodierenden Dekodierers (D.) verbunden sind, daß zur Bestimmung des bezüglich seiner Ausführungspriorität vorrangigsten Zugriffswunsches n Disjunktionsglieder (01... 1; On ...n) mit je n Eingängen und einem Ausgang vorgesehen sind, in denen jeweils die Ausgangssignale der gleichrangigen ersten Konjunktionsglieder (U11...Unn) nn verknüpft werden, daß eine Prioritätsschaltung (VP) vorgesehen ist, die die Ausgänge der Disjunktionsglieder (O1...1; On...n) so somiteinander verknüpft und gegeneinander verriegelt, daß an einem von n Ausgängen der Prioritätsschaltung (VP) ein Vorrangsignal ansteht, und daß je Ausgang der Prioritätsschaltung (VP) n zweite Konjunktionsglieder (U111...Unnn) mit je zwei Eingängen und einem Ausgang vorgesehen sind, wobei jeweils ein Eingang mit einem Ausgang der Prioritätsschaltung (VP) und der jeweils zweite Eingang mit dem Ausgang des jeweils entsprechenden ersten Konjunktions gliedes (u ...u ) verbunden sind, so daß nur eines nn der zweiten Konjunktionsglieder (Ui1l...U ) ein Freigabesignal abgibt.
lt. Anordnung nach Anspruch 10, dadurch gekennzeichnet, daß den den jeweils n ersten Konjunktionsgliedern (U ...U ) zugeordneten zweiten Konjunktionsgliedern lt nn (U111... Unnn) je ein ODER-Glied (O1"'0 ) mit n Einn gängen nachgeschaltet ist, an dessen Ausgängen die Freigabesignale (V.) abnehmbar sind.
12. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß das Eingangsregister (R) so ausgebildet ist, daß mit der Freigabe eines Zugriffswunsches dessen zugehörige-Kippstufe zurückgesetzt wird.
13. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß die Prioritätsschaltung (VP) die Vorrangsignale so lange speichert, bis durch zyklisches Abfragen der letzte, zu einem bestimmten Zeitpunkt anstehende Zugriffswunsch erfüllt ist.
14. Anordnung nach Anspruch 7 oder lt, dadurch gekennzeichnet, daß das Eingangsregister (R) so ausgebildet ist, daß jeweils nach einem Freigabesignal für einen Zugriffswunsch alle zu einem bestimmten Zeitpunkt anstehenden Zugriffswünsche (Zi) gelöscht und eegebenenfalls mit dem nächsten Übernahmetakt erneuert werden.
L e e r s e i t e
DE19722249996 1972-10-12 1972-10-12 Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem Pending DE2249996A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19722249996 DE2249996A1 (de) 1972-10-12 1972-10-12 Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19722249996 DE2249996A1 (de) 1972-10-12 1972-10-12 Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem

Publications (1)

Publication Number Publication Date
DE2249996A1 true DE2249996A1 (de) 1974-04-25

Family

ID=5858832

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19722249996 Pending DE2249996A1 (de) 1972-10-12 1972-10-12 Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem

Country Status (1)

Country Link
DE (1) DE2249996A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2543522A1 (de) * 1975-01-07 1976-07-08 Burroughs Corp Einrichtung in einem mikroprogramm- prozessor mit mehreren ebenen von unterbefehlsgruppen zur bedienung von peripherie-geraeten auf vorrang-basis

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2543522A1 (de) * 1975-01-07 1976-07-08 Burroughs Corp Einrichtung in einem mikroprogramm- prozessor mit mehreren ebenen von unterbefehlsgruppen zur bedienung von peripherie-geraeten auf vorrang-basis

Similar Documents

Publication Publication Date Title
DE2847216C2 (de) Datenverarbeitungsanlage mit Mehrprogrammbetrieb
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE2230119C2 (de) Einrichtung zur elektronischen Überwachung des Auftretens von Ereignissen innerhalb bestimmter Zeitabschnitte
DE2953861C2 (de)
DE3224034A1 (de) Mehrprozessorensystem
DE3914265A1 (de) Steuerung des fliessbandbetriebs in einem dynamische busanpassung anwendenden mikrocomputersystem
DE1499206C3 (de) Rechenanlage
DE3502147C2 (de)
DE3642324A1 (de) Multiprozessoranlage mit prozessor-zugriffssteuerung
DE1499182B2 (de) Datenspeichersystem
DE4207158A1 (de) Speicher-zugriffssteuerung
DE112014000340T5 (de) Vorablesezugriff auf Daten für einen Chip mit einem übergeordneten Kern und einem Scout-Kern
DE2064383C3 (de) Datenverarbeitungsanlage mit mehreren zentralen Verarbeitungseinrichtungen
DE2718551B2 (de)
DE19526008A1 (de) Vertikal partitionierter, primärer Befehls-Cache-Speicher
DE2906685C2 (de)
DE2617485A1 (de) Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen
DE3105115C2 (de)
DE2343501C3 (de) Steuerschaltung für zumindest eine Rechenanlage mit mehreren für die Durchführung von Ein-/Ausgabe-Programmen bestimmten Registern
DE2249996A1 (de) Anordnung zur prioritaetsgerechten steuerung einer mehrzahl von zugriffswuenschen in einem datenverarbeitungssystem
DE3200042C2 (de)
DE102017122909A1 (de) Kommunikationsarchitektur für den Datenaustausch zwischen Verarbeitungseinheiten
DE102020205069A1 (de) Relaisvorrichtung
DE1960278A1 (de) Pufferung von Steuerwort- und Datenwort-Systemspeicheruebertragungen in einem UEbertragungssystem-Steuerspeicher
DE1474090B2 (de) Datenverarbeitungsanlage

Legal Events

Date Code Title Description
OHJ Non-payment of the annual fee