DE3013070C2 - Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung - Google Patents

Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung

Info

Publication number
DE3013070C2
DE3013070C2 DE3013070A DE3013070A DE3013070C2 DE 3013070 C2 DE3013070 C2 DE 3013070C2 DE 3013070 A DE3013070 A DE 3013070A DE 3013070 A DE3013070 A DE 3013070A DE 3013070 C2 DE3013070 C2 DE 3013070C2
Authority
DE
Germany
Prior art keywords
request
address
signal
register
priority
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
Application number
DE3013070A
Other languages
English (en)
Other versions
DE3013070A1 (de
Inventor
Gregory Boyd Sandy Utah Wiedenman
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.)
Unisys Corp
Original Assignee
Sperry Corp 10019 New York NY
Sperry Corp
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 Sperry Corp 10019 New York NY, Sperry Corp filed Critical Sperry Corp 10019 New York NY
Publication of DE3013070A1 publication Critical patent/DE3013070A1/de
Application granted granted Critical
Publication of DE3013070C2 publication Critical patent/DE3013070C2/de
Expired 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/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)
  • Bus Control (AREA)
  • Communication Control (AREA)

Description

Die Erfindung betrifft eine Schaltungsanordnung zur Bearbeitung von Anforderungssignalen mit einem Prioritäts-Codierer, zu dem aus mehreren peripheren Geräten Über je eine gesonderte Leitung die Anforderungssignale heranführbar sind, und von dem ein Geräte-Adressiersignal zu demjenigen peripheren Gerät zurückgebbar ist, dessen Anforderungssignal die höchste Priorität zuerkannt ist, und mit einem Taktgenerator, von dem in periodischen Abständen ein Einschaltsignal an alle periphere Geräte ausgebbar ist
Die bekannten Dateneingabesysteme ermöglichen den Eintritt, die Darstellung und Speicherung der Daten in vielfältigen Medien des Informationsaustausches, z. B. auf kleinen Platten nach einem Standard der Industrie. Sobald die Daten somit gespeichert sind, sind sie zur kartenlosen Eingabe in ein gesondertes Rechensystem und zur Rückgabe in das Eingabesystem leicht verfügbar, in dem sie erneut wiedergegeben, in ein anderes Format gebracht oder abgeändert werden können. Die Darstellung der Daten kann über einen Drucker oder/und eine Kathodenstrahlröhre erfolgen, während die Dateneingabe an einer örtlichen oder entfernten Tastatur oder über periphere Geräte, z. B. Plattenleser vorgenommen wird. Sobald die Daten in das Eingabesystem eingetreten sind, können sie auch unmittelbar über ein Vermittlungsglied an ein gesondertes Rechensystem übertragen werden.
Ein Dateneingabesystem dieser Art arbeitet also mit zahlreichen peripheren Geräten zusammen, die eine Systemsteuerung anrufen, die nach den aufgestellten Bearbeitungs-Prinzipien an den Daten tätig wird. Aus
35
40
45
55
60
65 einem Speicher der Systemsteuerung werden nämlich Befehle wiedergewonnen und nach einer Folge oder einem Voirang ausgeführt, der durch einen innerhalb der Systemsteuerung gelegenen Mikroprogramm-Steuerung (oder eine sonstige Rechensteuereinheit) festgelegt wird. In typischer Weise verfolgt die Mikroprogramm-Steuerung eine normale Befehlsfolge, die über eine Handsteuerung vom Bedienenden oder eine feste Schaltungsanordnung im System eingestellt wird, wenn gewisse vorgeschriebene Umstände eintreten, (z.B. wenn der Strom eingeschaltet oder Fehler-Flipflops gesetzt werden). Üblicherweise sind auch Hilfsmittel zur Unterbrechung dieser normalen Befehlsfolge vorgesehen, damit die Systemsteuerung ein Äußeres Gerät bedienen kann, um ihm z.B. Daten zuzuführen oder diese aus ihm auszulesen oder seinen Betrieb zu beendigen oder in Abhängigkeit von einem Steuersignal die Befehlsfolge zu einer vorgegebenen Stelle hin abzuzweigen oder einen Sprung zu veranlassen.
Die peripheren Geräte der bekannten Dateneingabesysteme werden gewöhnlich nach zwei Verfahren mit der Systemsteuerung in Verbindung gebracht Beim ersten wählt die Systemsteuerung die peripheren Geräte als Teil ihrer normalen Befehlsfolge regelmäßig an, um zu ermitteln, ob eine Anforderung vorliegt Im positiven Fall wird die Anforderung als Unterbrechung behandelt, und falls Unterbrechungen von höherem Rang nicht vorliegen, zweigt oder springt die Mikroprogramm-Steuerung in der Befehlsfolge zu einer besonderen Stelle hin ab, an der die Speicheradresse der gewünschten Routine abgelegt ist oder erzeugt wird. Sobald die Speicheradresse auf diese Weise identifiziert wird, holt die Mikroprogramm-Steuerung dort den (die) Befehl(e) ab und fügt ihn (sie) in die Befehlsfolge ein, die den erwünschten Dienst leistet wie er vom peripheren Gerät angefordert wurde.
Das Anwählen bietet den Vorteil, daß der Aufbau des peripheren Gerätes sehr einfach (und somit unkostspielig) bleibt, da die Masse der Schaltungen (für die Adressierung und Speicherung) in der Systemsteuerung verbleibt Mit dem Anwählen ist jedoch der Nachteil verknüpft, daß die Ansprechzeit auf die Anforderung des peripheren Gerätes lange andauert. Zuerst muß das Gerät gesucht werden, was eine erhebliche Wartezeit mit sich bringen kann. Selbst nach dem Auffinden können mehrere Taktzyklen der Steuerung vergehen, bis der Ort der Speicheradresse festgestellt wird, (wobei eine Unterstützung durch die Programmausstattung erforderlich sein kann) und der dort abgelegte Befehl dort abgeholt wird.
Beim zweiten Verfahren, bei dem die peripheren Geräte der bekannten Dateneingabe-Systeme mit der Systemsteuerung Nachrichten austauschen, erfolgt ein direkter Zugriff auf den Speicher; die peripheren Geräte können hierbei die Systemsteuerung unterbrechen, ohne das Anwählen abwarten zu müssen. Daher werden die dem ersten, also dem Anwählverfahren zukommenden Unwirksamkeiten (Warte- und Adressierzeiten) ausgeschaltet; aber der innere Aufbau des peripheren Gerätes wird komplizierter, da es nicht nur die von ihm zu übernehmende Verrichtung, (die in ihm gespeichert oder hervorgerufen werden muß) sondern auch die besondere Routine innerhalb des Speichers der Systemsteuerung kennen muß.
Abänderungen beim zweiten Verfahren des unmittelbaren Speicherzugriffes sorgen für sog. auf Grund einer Priorität geleitete Unterbrechungen, bei denen also
mehrere Arten des Ansprechens nach einem gewünschten Vorrangschema möglich sind In typischer Weise müssen diese Systeme durch eine komplizierte Programmierung gestützt werden, was mit einer entsprechenden Zunahme der Bearbeitungszeit verknüpft ist, Neuere Entwicklungen, wie sie in der USA-Patentschrift Nr. 40 90238 von Russo gezeigt sind, haben die Notwendigkeit einer derartigen komplizierten Programmausstattung geschmälert, aber es bleiben dennoch die eigentümlichen Nachteile bezüglich des kostspieligeren inneren Aufbaus der peripheren Geräte.
Aus der deutschen Auslegeschrift Nr. 20 02 165 ist eine Datenverarbeitungsanlage bekannt, in der mit unterschiedlicher Dringlichkeit versehene Programme abschnittsweise abgewickelt werden. Sie weist minde- is stens ein Rechenwerk, einen Speicher und eine Dnnglichkeits-Steuereinrichtung auf, der von peripheren Gesäten über je eine gesonderte Leitung Anforderungssignale zugeführt werden. Diese Anforderungssignale gelangen über ein Anforderungsregister und eine Schaltstelle zu einem Eingangsregister, das je Dringlichkeitsstufe eine 1-Bitspeicherstelle für die Aufnahme eines Anforderungssignals aufweist An dieses Eingangsregister ist eine Auswahlschaltung angeschlossen, die fallweise das Anforderungssignal von höchster Dringlichkeit an einen Codierer weitergibt, der ein Codezeichen entwickelt, das weniger Zeichenelemente aufweist, als Dringlichkeitsstufen vorhanden sind. Dieses Codezeichen wird einem innerhalb der Dringlichkeits-Steuereinrichtung angeordneten Komparator zugeleitet, der die Aufgabe hat, das jeweilige Codezeichen aus dem Codierer mit einem in einem Ausgaberegister festgehaltenen Codezeichen zu vergleichen, das die Dringlichkeit des gerade laufenden Programmabschnittes angibt Falls diese Dringlichkeit geringer als die fallweise durch das Codezeichen aus dem Codierer ausgedrückte Dringlichkeit ist, wird dieses Codezeichen an die Stelle des bisnerigen in das Ausgaberegister eingeschrieben, und zugleich gibt der Komparator ein das laufend" Programm unterbrechendes Signal an das Rechenwerk ab, damit einerseits die Daten über den zuletzt erreichten Schritt des unterbrochenen Programms in einem Zwischenregister gespeichert und andererseits die Daten über den ersten abzuwickelnden Schritt des unterbrechenden Programms von dem peripheren Gerät aufgenommen wurden können. Die Auswahlschaltung und der Vergleicher werden jeweils von einem Haupttaktsignal in Tätigkeit gesetzt, das gerade vor Beginn des nächsten Programmabschnittes des laufenden Programr.M geliefert wird, damit gegebenenfalls das laufende Programm rechtzeitig unterbrochen wird.
Die Beschreibung des unmittelbaren Zusammenwirkens zwischen dem Rechenwerk und demjenigen peripheren Gerät, dessen Anforderungssignal die höchste Priorität zuerkannt ist, erscheint recht mangelhaft, da außer dem Hinweis, daß vom Rechenwerk Daten über den ersten abzuwickenden Programmschritt des unterbrechenden Programms von dem anfordernden peripheren Gerät aufgenommen werden, jegliche Aussagen über diesen direkten Informationsaustausch fehlen.
Ergänzend sei noch auf die Druckschrift »Intel«, MCS-80 User's Manual, (Oktober 1977), Seiten 6-265 bis 6 — 276, verwiesen, in der ein programmierbares Unterbrechungs-Steuergerät für Mikrocomputer beschrieben ist, dessen grundlegende Funktionen denen der zuvor erläuterten Dringlichkeits-Steuereinrichtung ähnlich sind. Um dem Programmierer spezielle Verfeinerungen zwischen den Arbejtsabläitfen zu bieten, ist jedoch der innere Aufbau dieses bekannten Unterbrephungs-Steuergerätes weit komplizierter gestaltet, ohne daß auf den unmittelbaren Informationsaustausch zwischen dem mit der höchsten Priorität anfordernden Gerät und dem zentralen Rechenwerk eingegangen ist
Aus dem Buch von Osborne: »Einführung in die Mikrocomputertechnik«, 2. Auflage, tei-wi Verlag, (München 1978), Seiten 5 -10 bis 5 - 25, ist bekannt, daß mehrere externe Bausteine über je eine: gesonderte Leitung ein Anforderungssignal mit einer vorgegebenen Priorität an ein Mikrocomputersystem liefern, das einen Baustein für eine Unterbrechungs-Prioritlt enthält In diesem Baustein wird unter den gleichzeitig eintreffenden Anforderungssignalen das Anforderungssignal mit der höchsten Priorität in ein Codezeichen umgesetzt, das innerhalb der Reihe externer Bausteine denjenigen externen Baustein bezeichnet, der gerade das Anforderungssignal mit der höchsten Priorität abgibt
Das zentrale Rechenwerk empfäßgt das Codezeichen, um zu bestimmen, zu welchem externen Baustein ein Anerkenntnissignal zurückzugeben ist, damit zwischen dem externen Baustein und dem zentralen Rechenwerk eine Übertragung von Steuer- und Datensignalen eingeleitet wird. Da für die Rückgabe des Anerkenntr.issignals nur eine Leitung zu dem am einen Ende der Reihe externer Bausteine liegenden Baustein geführt ist, muß das Anerkenntnissignal von einigen Bausteinen ungeändert hindurchgelassen werden, bis es von demjenigen externen Baustein, dessen Anforderungssignal unmittelbar zuvor die höchste Priorität zuerkannt wurde, empfangen und, als für sich bestimmt, erkannt wird. Für diesen Vorgang des Erkennens muß jeder externe Baustein i.i sich mit Ausnahme des letzten Bausteins der Reihe die gleiche Logik enthalten.
Dieses bekannte Mikrocomputersystem enthält außerdem Ein-/Ausgabe-Bausteine mit je einem 16-Bit-Register, in dem eine Unterbrechungsvektor-Adresse gespeichert ist, die die Adresse des betreffenden Urterbrechungsprogramms darstellt, das auf Grund des Anforderungssignals ausgeführt werden soll. Das Anerkenntnissignal wird auch einem derartigen Baustein zugeleitet, damit die Unterbrechungsvektor-Adresse aus dem 16-Bit-Register ausgelesen und über Adressenleitungen in den Programmzähler des zentralen Rechenwerks übertragen wird. Da jedem externen Baustein ein gesondertes Unterbrechungsprogramm zugeordnet werden muß, das durch die Unterbrechungsvektor-Adresse festgelegt wird, müssen innerhalb des Mikrocomputersysiems so viele Ein-/Ausgabe-Bausteine vorgesehen sein, wie externe Geräte angeschlossen werden sollen. Da oftmals die Anzahl der an das Mikrocomputersystem angeschlossenen externen Bausteine (Geräte) verändert wird, kann mefrtens nur ein gewisser Anteil der Ein-/Ausgabe-Bausteine in Betrieb genommen werden, während der Rest funktionslos bleibt.
Der Erfindung liegt die Aufgabe zugrunde, eine in ihrem Aufbau vereinfachte, voll nutzbare Schaltungsanordnung anzugeben, über die das gerade mit der höchsten Priorität anfordernde periphere Gerät die Adresse seines Unterbrechungsprogramms ableiten kann, um sie dem Mikrocomputersystem zur Verfugung zu stellen.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß vom peripheren Gerät beim Empfang seines Geräte-Adressiersignals und des Einschaltsignals aus
' dem Taktgenerator zumindest ein Adreßteil an ein Adressen-Register ausgebbar ist, von dem ein Registerstapel adressiert wird, in dem die Adressen des Ortes der Mikroroutinen abgelegt sind, die zur Bedienung der Anforderung aus dem peripheren Gerät verwendbar sind.
In der Schaltungsanordnung gemäß der Erfindung laufen der Reihe nach die folgenden Arbeitsschritte ab:
1) Mit Hilfe der empfangenen Anforderungssignale legt der in der Systemsteuerung angeordnete Prioritäts-Codierer eine die Nummer des peripheren Gerätes (Leitungsmoduls) bezeichnende Bitgruppe auf eine Sammelleitung; diese Bitgruppe stellt somit ein Geräte-Adressiersignal dar.
2) Sobald der spezielle Leitungsmodul auf Grund seiner Priorität adressiert ist, stellt er eine Adresse zur Übertragung in die Systemsteuerung bereit; diese Adresse besteht auch aus einer Bitgruppe, die die speziellen Funktionen festlegt, deren Übernahme der Leitungsmodul angefordert hat.
3) Zum passenden Zeitpunkt, der durch ein aus dem Taktgenerator der Systemsteuerung empfangenes Einschaltsignal festgelegt wird, (das für alle Leitungsmoduln gilt) wird die Adresse aus dem Leitungsmodul mit Hilfe dieses Taktsignals auf eine Daten in beiden Richtungen übertragende Sammelleitung gelegt, die alle Leitungsmoduln mit der Systemsteuerung verbindet.
4) Beim Empfang dieser Adresse aus dem Leitungsmodul kombiniert die Systemsteuerung gewählte Bits aus der Adresse mit anderen innerhalb der Systemsteuerung erzeugten Bits zur Bildung eines lndex'«ortes für einen Registerstapel der Systemsteuerung aus.
5) Das auf diese Weise entstandene Indexwort weist auf einen speziellen Platz innerhalb des Registerstapels hin, an dem eine Adresse für den angeforderten Dienst zuvor aus dem Hauptspeicher oder einem Speicher der Systemsteuerung abgelegt war.
6) Die so ermittelte Adresse wird zu einer Mikroprogramm-Steuerung als Teil der Systemsteuerung übertragen, die angewiesen wird, die bei der vorgeschriebenen Adresse untergebrachten Befehle abzuholen.
7) Die so abgeholten Befehle werden ausgeführt, womit der angeforderte Dienst für den betreffenden Leitungsmodul übernommen wird.
Die Systemsteuerung ist dabei derart aufgebaut, daß die zuvor aufgezählten Arbeitsschritte bei einer kleinstmöglichen Anzahl von Taktzyklen ablaufen.
Ausführungsbeispiele der Erfindung sind in der Zeichnung wiedergegeben und werden im folgenden näher erläutert Es zeigt
F i g. 1 ein Bild einer Hauptstation, an der die bevorzugte Aushlhrungsform der Erfindung untergebracht ist,
Fig.2 ein Blockschaltbild mit den wesentlichen Elementen der Erfindung,
Fig.3 ein ausführliches Schaltbild desjenigen Abschnitts, in dem die Adresse für den Leitungsmodul erzeugt und das Anforderungssignal in das Adressenregister eingegeben wird,
Fig.4 den inneren Aufbau des Prioritäts-Codis-er* 222derFig.3,
Fig.5 die zeitliche Folge, in der die Signale und andere Ereignisse in der Schaltung der F i g. 3 auftreten, und
F i g. 6 denjenigen Abschnitt der Schaltung gemäß der Fig.2, in dem die Adresse des Mikrobefehls liegt, und der sie zur Mikroprogramm-Steuerung lenkt.
Die Ausführungsform der Erfindung ist vorzugsweise am Arbeitstisch des Bedienenden (in der Hauptstation) als Teil eines Dateneingabesystems angebracht und wird innerhalb einer Systemsteuerung angewendet. Bei ίο anderen Ausführungsformen der Erfindung bildet ein von einem Mikrorechner oder Rechenautomaten gesteuertes System ein Zwischenglied zu einem oder mehreren periphei ■ η Geräten.
In einer perspektivischen Ansicht der Fig. 1 ist eine Hauptstation 100 für ein Dateneingabesystem wiedergegeben, zu dem eine Systemsteuerung gehört. Sie besteht aus einem tischförmigen Pult 101, einer Tastatur 102, einem Datensichtgerät 103 mit einer Kathodenstrahlröhre und einem oder zwei Disketten-Laufwerken i04. Die iaisSoiinchc Schältung, also die Systemsteuerung ist als gedruckte Schaltungsplatte unterhalb und zur Rückseite des Pultes 101 hin angebracht. Zur Verbindung der verschiedenen gedruckten Schaltungsplatten untereinander und mit anderen Elementen der Hauptstation 100. z. B. mit der Tastatur 102, dem Datensichtgerät 103 und den Disketten-Laufwerken 104 sind geeignete Verdrahtungen und Kabelanordnungen vorgesehen. An der Unterseite des Pultes 101 befindet sich die gesamte Stromzufuhr.
Die Tastatur 102, das Datensichtgerät 103 und die Disketten-Laufwerke 104 sind periphere Geräte, die mit der Systemsteuerung Informationen austauschen. Auch andere periphere Geräte wie Kartenlocher und -leser, Drucker oder Übertragungseinheiten, (die Daten über Leitungen zu einem anderen Ort übermitteln) können mit der Systemsteuerung in Verbindung stehen. Darüber hinaus können zusätzliche Stationen ohne Systemsteuerung, die jedoch Tastenfelder, Datensichtgeräte und Disketten-Laufwerke aufweisen, mit der Hauptstation 100 verbunden sein, an der sich die Systemsteuerung befindet.
All diese peripheren Geräte können als Leitungsmoduln betrachtet werden, die periodisch von der Systemsteuerung verschiedene Bedienungen anfordern, also z. B. zur Datenübertragung auffordern; es können Daten aus der Systemsteuerung ausgelesen werden, oder es soll eine spezielle Routine beendet werden. Die Art und Weise, wie die Systemsteuerung auf die unterschiedlichen Anforderungen anspricht und ihre Bedienung einleitet, sei nun in Verbindung mit dem speziellen Ausführur.gsbeispiel der Erfindung erläutert, dessen wesentlichste Elemente im Blockschaltbild der F i g. 2 dargestellt sind.
Mit einer Systemsteuerung 220 sind Leitungsmoduln 200a, 2006,... 200p durch Daten- und Steuerleitungen 202 verbunden, zu denen auch Anforderungsleitungen 204a, 2046,... 200p gehören, von denen jeweils eine in die Leitungsmoduln 200a, 2006,... 200p eintritt Ferner zählt zu den Steuerleitungen eine die Nummer des Übertragungskanals angegebene Sammelleitung 206 mit vier Leitungen, die zu allen Leitungsmoduln hin Abzweigungen besitzen. Ähnliches gilt für eine Datensammelleitung 208. Durch Taktleitungen 210 laufen verschiedene Signale zur Zeitgabe ebenfalls in die Leitungsmoduln hinein; unter diesen hat ein Einschaltsignal für die Erfindung eine besondere Bedeutung.
Dh- erwähnten Anforderungsleitungv-i 204a, 204i>,... 204p, die jeweils an einem anderen Leitungsmodul
angeschlossen sind, münden gemäß der F i g. 2 in einem Prioritäts-Codierer 222, in dem die Nummer des Übertragungskanals zum Leitungsmodul mit der höchsten Priorität bestimmt wird. Dabei sei dem Leitungsmodul 200p die höchste und dem Leilungsmodul 200a die niederste Priorität zugeteilt. Wenn insgesamt 16 Leitungsmoduln mi; dem Prioritäts-Codierer 222 verbilden sind, kann die Nummer des jeweiligen Übertragungskanals durch ein Wort aus 4 Bits wiedergegeben werden.
Die Anforderungssignaie werden von tion anfordernden Leitungsmoduln durch ein Taktsignal aus einem Generator 226 in den Prioritäts-Codierer 222 eingelassen, der den anfordernden Leitungsmodul mit der höchsten Priorität ermittelt und die Nummer des i> Übertragungskanals als Wort aus 4 Bits erzeugt, wodurch der Leitungsmodul mit der höchsten Priorität identifiziert wird. Diese Nummer wird auf die mit allen Lcitüfigsrnoduln verbundene Sammelleitung 206 gelegt. Diese Nummer stellt zugleich eine Adresse des Leitungsmoduls und eine Anzeige dar, daß die Anforderung des Leitungsmoduls anerkannt ist.
Sobald ein Leitungsmodul ein soiches Anerkenntnis wahrnimmt, wird mit Hilfe eines Taktsignals ein Anforderungswort aus neun Bits auf die Datensammelleitung 208 gebracht; dieses Taktsignal wird in Form eines Einschaltsignals periodisch vom Generator 226 der Systemsteuerung 220 hervorgerufen und über eine der Taktleitungen 210 zu den Leitungsmoduln übertragen. Das Anforderungswort enthält sieben Information .oits, die von der Systemsteuerung 220 als Index zur Auswahl der Mikroadresse einer Mikroroutine verwendet werden, damit die Anforderung des Leitungsmoduls bedient werden kann.
Innerhalb des Leitungsmoduls wird jeder Art Anforderung, die aufgestellt werden kann, ein spezielles Anforderungswort zugeordnet, in dem die beiden zusätzlichen Bits für eine Paritätsprüfung benutzt werden.
Die sieben Informationsbits des Anforderungswortes werden innerhalb der Systemsteuerung mit drei in dieser erzeugten zusätzlichen Bits kombiniert, wobei ein Adressenwort aus 10 Bits entsteht, das in einem Adressenregister 228 gespeichert wird. Diese drei zusätzlichen Bits 101 werden in einem Block 230 der F i g. 2 hervorgerufen und zur Kombination mit den sieben Informationsbits einer Auswahlschaltung 232 am Adressenregister 228 zugeführt. Diese Auswahlschaltung 232 erhält noch aus anderen Quellen Signale, was in der F i g. 2 nicht dargestellt ist, damit die Systemsteuerung zahlreiche Quellen auswählen kann, die das Adressenregister 228 belegen, und somit auch andere Funktionen zu übernehmen imstande ist Von einer Wahllogik 234 wird festgelegt, welche der Quellen, die mit der Auswahl-Schaltung 232 verbunden sind, Signale zu deren zehn Ausgangsleitungen heranführen kann.
Von einem Registerstapel 236, der ein Speicher mit zufallsverteiltem Zugriff für 1024 Wörter mit je 18 Bits ist wird außer anderen Posten die Mikroadresse des Ortes der Mikroroutine, die dem aus dem Leitungsmodul empfangenen Anforderungswort entspricht, also derjenigen Mikroroutine aufbewahrt, die zur Bedienung der Anforderung aus dem Leitungsmodul verwendet werden soIL Diese Mikroadressen werden stets in oktaler Form zwischen 01200 und 01376 gespeichert Wenn diese oktalen Adressen in Binäradressen konvertiert werden, so erkennt man, daß, abgesehen von den drei anfänglichen Nullen, die ersten drei Bits stets in der Folge 101 vorliegen. Beispielsweise wird aus der oktalen Adresse 01200 die Binäradresse 000001010000000 und aus der oktalen Adresse 01376 die Binäradresse 000001011111110. Dadurch daß die Bits 101 zu den sijben Informationsbits des Anforderungswortes addiert werden, wird der Platz der Mikroadressen im Registerstapel 236 identifiziert. In typischer Weise werden die Mikroadressen aus den äußeren Speichermedien während einer Einleitungsfolge der Systemsteuerung in den Registerstapel eingelassen und bleiben dort so lange aufbewahrt, wie die Stromzufuhr aufrechterhalten wird.
Wenn der Registerstapel 236 infolge des Empfangs gewisser Signale aus der Wahllogik 234 eingeschaltet wird, werden die 18 Datenbits, die bei der von einem Adressenregister 228 vorgeschriebenen Adresse gespeichert sind, auf eine Quellensammelleitung 238 übertragen, die tatsächlich eine Auswahlschaltung mit 16 ,•Ausgängen mi uic iinöi iiiauOiisuus /.u einem naiiereglster 240 ist, wahrend die beiden restlichen Bits lediglich Paritätsbits darstellen. Die Auswahl des passenden Eingangs zur Quellensammelleitung 238 erfolgt an der Wahllogik 234.
Das im Adressenregister 228 festgehaltene Wort aus 10 Bits, (die aus sieben Informationsbits des Anforderungswortes aus dem Leitungsmodul und aus den drei Bits 101 bestehen) dient als Index oder Adresse des Registerstapels 236. An dem durch diese Adresse angegebenen Platz wird nämlich die Mikroadresse der Mikroroutine aufbewahrt, die der Anforderung aus dem Leitungsmodul entspricht. Beim Empfang der richtigen Einschaltsignale aus der Wahllogik 234 erscheint diese Mikroadresse an den Ausgangsklemmen des Registerstapels 236. Im entsprechenden Zeitpunkt wird dann diese Mikroadresse durch die Quellensammelleitung 238 zum Halteregister 240 geschickt und in dieses mit Hilfe eines Taktsignals eingelassen.
Wenn die Mikroadresse der gewünschten Mikroroutine im Halteregister 240 eingespeist ist, wird die Systemsteuerung vorbereitet, damit ein Sprung zu jener Adresse erfolgt und die dort abgelegten Mikrobefehle der Mikroroutine zu holen begonnen werden. Diese Mikrobefehle unterrichten die Systemsteuerung 220 genau darüber, welcher Maschinenbefehl ausgeführt werden soll, z. B. ob ein Register zu verschieben, ein Flipflop zu setzen oder ein Verknüpfungsglied einzuschalten ist Dieser Sprung zur Adresse des Mikrobefehls wird unter Anwendung der üblichen Mikroprozessortechnik durchgeführt, sobald die Mikroadresse in eine Mikroprogramm-Steuerung 242 eingeführt ist. Bei diesem Verfahren erzeugt die Mikroprogramm-Steuerung 242 eine Reihe Mikroadressen, damit die Systemsteuerung der gewünschten Folge von Mikrobefehlen folgen kann.
Sobald eine anfängliche Mikroadresse gegeben ist besitzt die Mikroprogramm-Steuerung unter anderen Möglichkeiten die Fähigkeit, jene Mikroadresse um einen Schritt zu vergrößern oder zu verkleinern, um den nächsten Mikrobefehl zu erreichen. Wenn somit die Mikrobefehle in der gewünschten Folge hintereinander bei einer bekannten Ausgangsmikroadresse gespeichert sind, kann die Mikroprogramm-Steuerung sie alle unter alleiniger Anwendung der anfänglichen Ausgangsmikroadresse in der richtigen Reihenfolge abrufen. Dieser Fall ist für eine unermeßliche Anzahl von Mikrobefehlen gegeben. Diese Mikrobefehle, die die verschiedenen Bedienungen definieren, die die Leitungsmoduln aus der Systemsteuerung anfordern, sind nämlich der Reihe
nach in einem MikroSpeicherbereich 244 untergebracht. Falls eine noch längere Routine erwünscht ist, kann der Mikrobefehl die Systemsteuerung 220 auf einen Hauptspeicher 250 verweisen, in dem ein sehr komplizierter Satz von Befehlen aufbewahrt werden kann. Der Mikrobefehl kann aber auch zur Mikroprogramm-Steuerung 242 zurückgeleitei werden, wo er als neue Ausgangsnrikroadresse für einen weiteren Satz Befehle dienen kann. Die gesamte vorherige Beschreibung, wie die Mikroprogramm-Steuerung 242 auf die aus dem Halteregister 240 empfangene Mikroadresse einwirkt, gibt lediglich die grundlegende Technologie der Mikroprozessoren wieder, um die Umgebung zu verdeutlichen, in der die Erfindung angewendet wird.
Die Mikroprogramm-Steuerung 24:2 bewirkt, daß die bezeichneten Mikrobefehle einem Mikroprozessor 254 zugeleitet werden, der sie zur Bedienung des anfordernden Leitungsmoduls ausführt.
In der F i g. 3 ist ein ausführliches Blockschaltbild desjenigen Abschnittes dargestellt, der die Adresse des Leitungsmoduls mit der höchsten Priorität erzeugt. Wie bereits erwähnt, treten aus den 16 Leitungsmoduln die betreffenden Anforderungsleitungen 204a, 204ft,... 204p in den Prioritäts-Codierer 222 ein, der die Nummer des Übertragungskanals zum Leitungsmodul mit der größten Priorität bestimmt. Diese Docierung zu einem Wort aus 4 Bits erfolgt durch handelsübliche integrierte Schaltungen gemäß der F i g. 4.
Gemäß der F i g. 4 sind zwei Prior itäts-Codierelemente 402a und 4026 mit einem Übergang von 8 auf 3 Leitungen in Kaskade geschaltet, wodurch sich der Prioritäts Codierer 222 (Fig.2 und 3) ergibt. Die Leitungsmoduln mit einer höheren Priorität sind an das Prioritäts-Codierelement 402a und die mit einer niedrigeren Priorität an das Prioritäts-Codierelement 4026 angeschlossen. Eine Schaltklemme 4046 des letzteren ist an eine Schaltklemme 406a des ersteren gelegt, damit bei der Bearbeitung einer Anforderung aus einer Anforderungsleitung mit einer höheren Priorität das untere Prioritäts-Codierelement 4026 abgeschaltet wird und an seiner GS-Ausgamgsklemme 408 ein 1-Signal erscheint. Hierourch wird eine Leitung MSB für das bedeutendste Bit des Wortes, das die Nummer des Übertragungskanals angibt, stets auf das Niveau des 1-Signals gebracht. Darüber hinaus werden drei Ausgangsleitungen 4106 des unteren Prioritäts-Codierelements 4026 in gleicher Weise auf dem hohen Niveau des 1-Signals gehalten, falls das Prioritäts-Codierelement 4026 abgeschaltet ist oder keine Signale an seinen Eingangsklemmen auftreten. Weiter arbeiten drei NAND-Glieder 412a, 4126 und 412c als Negatoren bezüglich dreier Ausgangsleitungen 410a des oberen Prioritäts-Codierelements 402a Da die beiden Prioritäts-Codierelemente 402a und 4026 so aufgebaut sind, daß an ihren drei Ausgangsklemmen Zo, Z\ und Zi die oktale Umkehrung der Nummer der Eingangsleitung von höchstem Rang erscheint, ergibt sich, daß vier Leitungen 306 die binärcodierte dezimale Äquivalente der Eingangsleitung höchsten Ranges führen, auf der das Anforderungssignal auftritt Falls dem Prioritäts-Codierelement 402a gar keine Anforderungssignale zugeleitet werden, bleiben seine drei Ausgangsleitungen 410a auf dem Niveau des 1-Signals; ferner wird über die Schaltklemme 406a das untere Prioritäts-Codierelement 4026 aktiviert, wobei an seiner GS-Ausgangsklemme M 408 ein 0-Signal auftritt und die drei Ausgargsleitungen 4106 die oktale Umkehrung der Nummer der Eingangsleitung höchsten Ranges führen, auf der ein Anforde rungssignal erscheinen kann. Da die NAND-Glieder 412a, 4126 und 412c als Negatoren wirksam sind, führt das dazu, daß die Nummer der Eingangsleitung höchsten Ranges, auf der ein Anforderungssignal erscheint, in der Binärform über die Leitungen 306 abgegeben wird.
Gemäß der F i g. 3 laufen die Leitungen 306 von dem Prioritäts-Codierer 222 zu einer Auswahlschaltung 302, die einen Teil eines Kanalregisters 224 bildet. Die Aufgabe der Auswahlschaltung 302 besieht darin, eine der beiden möglichen Eingangsquellen zu wählen und diese an die nachfolgenden Auswahlschaltungen innerhalb des Kanalregisters 224 anzuschließen. Die eine Eingangsquelle wird vom Ausgang des Prioritäts-Codierers 222 und die andere von einem der Ausgänge eines Speicherschaltgerätes 307 gebildet. Die letztere wird jedesmal dann gewählt, wenn keiner der 16 Eingangsklemmen des Prioritäts-Codierers 222 ein Anforde rungssigna! zugeführt wird. Die Auswahlschaltung 302 kann beispielsweise ein Vierfach-Datenwähler mit drei Leitungen sein, dessen Einstellung über eine Wahlleitung 305 erfolgt, auf der ein Signal erzeugt wird, durch das die logische NOR-Funktion zwischen den beiden Ausgangsleitungen 406a und 4066der Prioritäts-Codierelemente 402a und 4026 der F i g. 4 zustandekommt.
Das Kanalregister 224 stellt gemäß der Fig.3 tatsächlich eine Kombination aus drei Auswahlschaltungen dar, von denen die eine 302 bereits erläutert ist und die zweite 304, die aus denselben integrierten Schaltkreisen aufgebaut ist und vier Ausgangsklemmen der Auswahlschaltung 302 oder eines Kettenstapels (nicht gezeigt) anwählt Ein solcher Kettenstapel bedient die Anforderungen, die aus anderen Quellen als den Leitungsmoduln herrühren können. Von der dritten Auswahlschaltung 307 werden entweder vier Ausgangsleitungen der Auswahlschaltung 304 oder vier Bits aus einer Rechnersammelleitung 246 angewählt, wenn z. B. Daten in die Leitungsmoduln eingeschrieben werden sollen; diese vier Bits dienen dann als Adresse des gewünschten Leitungsmoduls, die mit Hilfe der ersten Auswahlschaltung 302 über die Sammelleitung 206 zu den Leitungsmoduln übertragen wird. Die Bedeutung der Auswahlschaltung 307 besteht hier darin, daß eine spezielle Adresse eines Leitungsmoduls auf der Sammelleitung 206 festgehalten wird, bis der vom Leitungsmodul angeforderte Dienst abgeschlossen ist. Wegen dieser Speicherfunktion, die durch ein eingebautes Element 326 erreicht wird, erscheint stets eine Adresse aus 4 Bits auf der Sammelleitung 206 als Nummer des .Übertragungskanals. Falls aus den Leitungsmoduln keine Anforderung empfangen wird, bewirkt der Prioritäts-Codierer 222, daß die Adresse 0000 des Leitungsmoduls mit der niedrigsten Priorität erzeugt wird. In dem Diagramm der Fig.5 ist ein 5phasiges Taktsignal veranschaulicht das von der Systemsteuerung benutzt wird; jede Phase hat dieselbe feste Dauer und beginnt mit dem Ende der vorherigen Phase. Gemeinsam bilden die fünf Phasen die Zykluszeit der Systemsteuerung.
Alle Phasensignale und deren Kombinationen werden mit Hilfe üblicher Zeitgeberschaltungen und logischer Schaltungen erzeugt was im Generator 226 der F i g. 2 und 3 geschieht Ein wesentliches Taktsignal ist das bereits genannte Einschaltsignal, das normalerweise in den Phasen 2 und 3 der Zykluszeit der Systemsteuerung das hohe Niveau und in den Phasen 4,5 und 1 das tiefe Niveau einnimmt Am Ende der Phase 3, also an der Rückflanke des hohen Niveaus werden dia Anforde-
rungssignale der Leitungsmoduln aus diesen in den Prioritäts-Codierer eingelassen. Wenn eine solche Anforderung zur Bedienung anerkannt wird oder die Systemsteuerung eine Datenübertragung zu oder von einem Leitungsmodul vornimmt, wird die zuvor bezeichnete Form des Einschaltsignals abgeändert. Wenn nämlich die Anforderung des Leitungsmoduls anerkannt ist, bleibt das Einschaltsignal länger auf dem hohen Niveau, das zwar mit der Phase 2 des einen Zyklus beginnt, aber mit der Phase 3 des nächsten Zyklus endigt (F i g. 5), worauf die Anforderungen der Leitungsmoduln erneut geprüft werden können.
Die Funktion des Einschaltsignals liegt zusätzlich zu der, die Anforderungssignale aus den Leitungsmoduln in den PrioriläiS-Codierer 222 im richtigen Zeitpunkt einzulassen, darin, das Anforderungswort des adressierten Leitungsmoduls zur Systemsteuerung zu übermitteln. Der adressierte Leitungsmodul benutzt nämlich das Einschaltsignal dazu, daß der Aufforderung zugeordnete Auftorder jngswort auf dei Datensammelleitung 208 ^u legen (P i g. 3). Mit anderen Worten ausgedrückt, erscheint ein Anforderungswort jedesmal dann auf der Datensammelleitung 208, wenn das Einschaltsignal das hohe Niveau einnimmt und der betreffende Leitungsmodul von dem Prioritäts-Codierer über die die Nummer des Kanals führende Sammelleitung adressiert wird. Falls jedoch die Systemsteuerung das Anforderungssignal aus dem Leitungsmodul nicht anerkennt, wird das Anforderungswort in der Datensammelleitung 208 vernachlässigt, (also von der Auswahlschaltung 232 des Adressenregisters nicht angewählt) und das Einschaltsignal fällt am Ende der Phase 3 ab.
Wenn die Systemsteuerung das Anforderungssignal anerkannt hat, erzeugt die Wahllogik 234 den passenden Code, damit die Auswahlschaltung 232 die Datensammelleitung 208 als Quelle anwählen kann, sowie drei feststehende Bits und leitet das sich ergebende Wort aus 10 Bits zum Adressenregister 228, wo es gespeichert wird. Der Zeitpunkt dieses Einlaßvorgangs des Wortes aus 10 Bits in das Adressenregister 228 liegt im Übergang zwischen den Phasen 3 und 4 desjenigen Zyklus, in dem eine Anforderung des Leitungsmoduls anerkannt worden ist (Fig.5). Die Auswahlschaltung 232 lenkt auch Informationen aus anderen Quellen der Systemsteuerung z. B. von Eingabeleitungen 330 zum Adressenregister 228. Die einzige Funktion der Auswahlschaltung 232 besteht darin, die sieben Informationsbits aus der Datensammelleitung 208 der Leitungsmoduln und die drei erzeugten Bits 101 anzuwählen, wenn die Anforderung des Leitungsmoduls anerkannt und das Einschaltsignal auf das hohe Niveau gebracht ist.
Bei dieser Ausführungsform der Erfindung wird das Anforderungssignal von einem im Leitungsmodul untergebrachten Signalspeicher erzeugt Wenn es ein hohes Niveau annimmt, wird angezeigt, büß im Augenblick keine Anforderung erfolgt, während das tiefe Niveau eine Anforderung bedeutet Die Rückflanke des Einschaltsignals, das allen Leitungsmoduln fiber die Steuerleitung 210 zugeführt wird (F i g. 2), schaltet diesen Signalspeicher weiter, so daß dem Leitungsmodul bezüglich der Wegnahme oder Abänderung seines Anforderungssignals und der entsprechenden Anforderung die größte Anpassungsmöglichkeit gewährt wird
Wie bereits erwähnt, wird nur die Anforderung des Leitungsmoduls mit der jeweils höchsten Priorität von dem Prioritäts-Codierer 222 anerkannt Sogar wenn die Anforderung die höchste Priorität hat, braucht die Systemsteuerung sie nicht anzuerkennen. Die Anforderung eines Leitungsmoduls wird nämlich nur dann anerkannt, wenn die von dem Prioritäts-Codierer 222 bestimmte Nummer des Übertragungskanals aus vier Bits in das Speicherelement 326 in der Auswahlschaltung 307 des Kanalregisters 224 mit Hilfe eines Taktsignals eingelassen ist.
Die Taktgabe oder das Anerkenntnis der Anforderung eines Leitungsmoduls erfolgt innerhalb dt;
ίο Periode eines Zyklus (Fig.5), wenn nicht gerade eine Anforderung mit einer höheren Priorität aus einer anderen Quelle als einem Leitungsmodul von der Systemsteuerung bedient wird. Die Systemsteuerung weist nämlich einen Aufgabenverteiler auf, der alle Anforderungen auf Grund der Priorität bearbeitet. Beispielsweise können innerhalb der Systemsteuerung 220 zahlreiche Fehleranzeiger (Flipflops oder andere speichernde Vorrichtungen) angeordnet sein, die während Ηργ Aiisführiinsr pinpr vnrhprcrphpnHpn Mil·rnrmiti-
ne gesetzt werden konnten, z. B. ein Anzeiger, daß ein Paritätsfehler wahrgenommen wurde. Diesen Fehleranzeigern kann eine höhere Priorität als den Anforderungen aus den Leitungsmoduln zugeordnet sein-, somit sperrt mit dem Setzen eines Fehleranzeigers die Wahüogik 234 das Taktsignal, das sonst die Anforderung des Leitungsmoduls in das Speicherelement des Kanalregisters 224 einschleusen würde. Die Fehleranzeige kommt also dem Anerkenntnis der Anforderung eines Leitungsmoduls zuvor. In ähnlicher Weise können die Anforderungen der Leitungsmoduln eine höhere Priorität als andere Anforderungen innerhalb der Systemsteuerung aufweisen, z. B. als Anforderungen eines Zeitgebers, einer Kette von hoher Priorität oder einer sonstigen Kette oder aus dem Hintergrund. In gleicher Weise können die Anforderungen des Zeitgebers eine höhere Priorität als die der Ketten usw. haben. Zu den Kettenanforderungen gehören solche, die vorübergehend hintereinander in einer Tabelle abgelegt werden, daß da die anderen Anforderungen sie hinsichtlich ihrer Priorität übertreffen. Derartige Tabellen-Anforderungen werden in einem Kettenstapel abgelegt, bei dem alle Eingänge der Reihe nach bedient werden.
Gemäß dem Blockschaltbild der F i g. 6 werden die vom Adressenregister 228 (F i g. 3) abgegebenen Adressen in den Registerstapel 236 eingelassen. Die zugehörigen, im Adressenregister 228 aufbewahrten Bits, die sich aus dem Anforderungswort des Leitungsmoduls mit der höchsten Priorität und den drei feststehenden Bits 101 zusammensetzen, identifizieren denjenigen Teil der im Registerstapel gespeicherten Informationen, der zur Quellensammelleitung 238 laufen soiL Der Registerstapel 236 wird von im Handel verfügbaren Speichern mit zufallsverteiltem Zugriff gebildet Die entsprechenden Steuersignale zur Unterrichtung des Registerstapels 236, daß Daten aus ihm ausgelesen, (also nicht in ihn eingeschrieben) werden sollen, werden jedesmal dann in der Wahllogik 234 erzeugt, wenn ein Anforderungssignal anerkannt und das Einschaltsignal auf das hohe Niveau gebracht worden ist (F i g. 5). Sobald der Registerstapel 236 zum Lesen umgeschaltet ist, erscheinen die bei der vorgeschriebenen Adresse gespeicherten Daten auf 18 Ausgabeleitungen 602, sobald die Adreßsignale dem Registerstapel zugeführt werden.
Vom Registerstapel 236 aus läuft die Mikroadresse der Routine, von der zum Dienst aufgefordert wird, über die Quellensammelleitung 238, die eine Auswahlschal-
Ja.
tang enthält zum Halteregister 240, wobei beachtet sei, daB die beiden Pantätsbits an dieser Obertragung nicht teilnehmen. Ais QuellensammeUeitung wird für die Quellensammelleitung 238 ein üblicher Datenwähler mit 8 Eingängen und einem Ausgang benutzt Zur s passenden Arbeitsweise werden nur drei Wahlsignale benötigt, um festzulegen, welcher der acht Eingänge angewählt werden solL Die Wahlsignale zur Einstellung der QuellensammeUeitung 238 entstehen in der Wahllogik 234 mit Hilfe logischer Verknüpfungsglieder, sobald ein Anforderungssignal anerkannt und das Einschaltsignal auf das hohe Niveau gebracht ist
Im Halteregister 240 werden vier Vierfach-Flipflops zum Festhalten von 16 Datenbits benutzt Die eingehenden Daten werden mit der Vorderflanke des mit der Phase 1 auftretenden Taktsignals zu der Ausgangskieaune übertragen (F i g. 5).
Der Ausgang des Halteregisters 240 ist gemäß der F i g. 6 mit verschiedenen Abschnitten der Systemsteuerung verbunden. In einigen Fällen nimmt der Mikroprozessor die Dsten an, während in anderen Fällen, wenn die Daten zu einem Leitungsmodul gesendet werden, sie von einem Sende-Empfangsgerät (nicht gezeigt) aufgenommen werden, das sie seinerseits über die Datensammelleitung 208 an die Leitungsmoduln weitergibt Wenn jedoch das Halteregister die Mikroadresse der nächsten Mikroroutine festhält, die die Systemsteuerung ausführen soll, werden die Daten stets von der Mikroprogramm-Steuerung 242 angenommen. Diese benutzt diese Adresse, um den Anfangspunkt im MikroSpeicherbereich 244 aufzufinden, an dem der erste Mikrobefehl der gewünschten Mikroroutine untergebracht ist Sobald die Mikroprogramm-Steuerung den Anfangspunkt der gewünschten Routine kennt, schaltet sie durch alle Mikrobefehle durch, die zur Vervollständigung der Mikroroutinen notwendig sind.
Die von der Mikroprogramm-Steuerung angewendeten Verfahren, die verschiedenen Befehle abzurufen und auszuführen, die die Systemsteuerung übernehmen soll, bilden die Standard-Mikroprozessor-Technologie, Dementsprechend wirkt der Mikroprozessor auf die Mikroadressen, die im Halteregister 240 in der gewünschten Form gespeichert sind. Die Fig. 6 zeigt daher eine Anordnung, mit der sich dieses Ziel erreichen läßt
In der F i g. 6 ist die Mikroprogramm-Steuerung 242 aus drei integrierten Schaltungen aufgebaut, von denen Mikroprogramme gesteuert werden. Sie arbeiten mit dem MikroSpeicherbereich 244, einem Haltekreis 610 und einer Sprung- und Wahlschaltung 608 zusammen. Der MikroSpeicherbereich 244 besteht aus einem Programmabschnitt mit 1024 Wörtern und aus einem Abschnitt mit zufallsverteiltem Zugriff mit 1024 Wörtern von je 18 Bits Länge. Der Haltekreis 610 ist ein Register, von dem ein Mikrobefehl während seiner Ausführung festgehalten wird, und das mehrere Flipflop-Schaltungen aufweist Von der Sprung- und Wahlschaltung 608 wird die Tätigkeit der Mikroprogramm-Steuerung am nächsten Befehl ermittelt Zusätzlich zu einer Eingangsleitung 609 für die Mikrobefehle werden über andere Eingangsleitungen 612 Zustandscodes und äußere Sprungsignale eingespeist damit zwei verschlüsselte Bits abgegeben werden können, die eine Auswahlschaltung 614 innerhalb der Mikroprogramm-Steuerung 242 einstellen. Der innere Aufbau der Sprung- und Wahlschaltung 608 benutzt mehrere Flipflops und gruppierte logische Verknüpfungsglieder.
Hierzu 6 Blatt Zeichnungen

Claims (2)

  1. Patentansprüche
    1, Schaltungsanordnung zur Bearbeitung von Anforderungssignalen mit einem Prioritäts-Codie- s rer, zu dem aus mehreren peripheren Geräten Ober je eine gesonderte Leitung die Anforderungssignale heranführbar sind, und von dem ein Geräte-Adressiersignal zu demjenigen periplieren Gerät zurückgebbar ist, dessen Anforderungssignal die höchste Priorität zuerkannt ist, und mti: einem Taktgenerator, von dem in periodischen Abständen ein Einschaltsignal an alle peripheren Geräte ausgebbar ist, dadurch gekennzeichnet, daß vom peripheren Gerät (200a, 200Zj,... oder 20OpJ beim Empfang seines Geräte-Adressiersignals (Kanal-Nr.) und des Einschaltsignals aus dem Taktgenerator (226) zumindest ein Adreßteil an ein Adressen-Register (228) ausgebbar ist, von dem ein Registerstapel (236) adressiert wird, in dem die Adressen des Ortes der Mikroroutinen abgelegt sind, die zur Bedienung der Anforderung aus dem peripheren Gerät verwendbar sind.
  2. 2. Schaltungsanordnung nach dem Anspruch 1, dadurch gekennzeichnet, daß dem Adressen-Register (228) eine Auswahlschaltung (232) vorgesetzt ist, der zusätzlich zu dem Adreßteif aus dem jeweiligen peripheren Gerät (200a, 2006,... oder 200p) mehrere Biteignale (101) als feststehendes Wort aus einem Speicher (230) zuführbar sind, und daß die Auswahlschaltung (232) den Adreßteil mit den Bitsignalen (101) zu einem Indexwort vereinigt, das in das Adressen-Register (228) -übertragen wird.
DE3013070A 1979-04-11 1980-04-03 Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung Expired DE3013070C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/029,157 US4237535A (en) 1979-04-11 1979-04-11 Apparatus and method for receiving and servicing request signals from peripheral devices in a data processing system

Publications (2)

Publication Number Publication Date
DE3013070A1 DE3013070A1 (de) 1980-10-30
DE3013070C2 true DE3013070C2 (de) 1983-05-11

Family

ID=21847556

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3013070A Expired DE3013070C2 (de) 1979-04-11 1980-04-03 Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung

Country Status (3)

Country Link
US (1) US4237535A (de)
JP (1) JPS5936770B2 (de)
DE (1) DE3013070C2 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5616248A (en) * 1979-07-17 1981-02-17 Matsushita Electric Ind Co Ltd Processing system for interruption
DE3003340C2 (de) * 1980-01-30 1985-08-22 Siemens AG, 1000 Berlin und 8000 München Verfahren und Schaltungsanordnung zur Übertragung von binären Signalen zwischen über ein zentrales Busleitungssystem miteinander verbundenen Anschlußgeräten
US4521858A (en) * 1980-05-20 1985-06-04 Technology Marketing, Inc. Flexible addressing and sequencing system for operand memory and control store using dedicated micro-address registers loaded solely from alu
US4628158A (en) * 1982-07-16 1986-12-09 At&T Bell Laboratories Stored program controller
US5142689A (en) * 1982-09-27 1992-08-25 Siemens Nixdort Informationssysteme Ag Process for the preparation of the connection of one of several data processor devices to a centrally synchronized multiple line system
US4523277A (en) * 1982-09-30 1985-06-11 Ncr Corporation Priority interrupt system for microcomputer
US4654820A (en) * 1983-11-30 1987-03-31 At&T Bell Laboratories Interrupt bus structure
US4779195A (en) * 1985-06-28 1988-10-18 Hewlett-Packard Company Interrupt system using masking register in processor for selectively establishing device eligibility to interrupt a particular processor
US4761732A (en) * 1985-11-29 1988-08-02 American Telephone And Telegraph Company, At&T Bell Laboratories Interrupt controller arrangement for mutually exclusive interrupt signals in data processing systems
US5278958A (en) * 1988-01-27 1994-01-11 Kabushiki Kaisha Toshiba Method and apparatus for selecting a keyboard on a computer system
US5129078A (en) * 1988-08-19 1992-07-07 Groves Stanley E Dedicated service processor with inter-channel communication features
JPH0395616A (ja) * 1989-09-08 1991-04-22 Toshiba Corp キーボード接続制御方式
US5319751A (en) * 1991-12-27 1994-06-07 Intel Corporation Device driver configuration in a computer system
US5852746A (en) * 1995-06-26 1998-12-22 Canon Kabushiki Kaisha System for transmitting a message using status button to system administrator by using a signal comprising predetermined number of changes effected over a period
US20100162256A1 (en) * 2008-12-18 2010-06-24 Alexander Branover Optimization of application power consumption and performance in an integrated system on a chip
US8862909B2 (en) 2011-12-02 2014-10-14 Advanced Micro Devices, Inc. System and method for determining a power estimate for an I/O controller based on monitored activity levels and adjusting power limit of processing units by comparing the power estimate with an assigned power limit for the I/O controller
US8924758B2 (en) 2011-12-13 2014-12-30 Advanced Micro Devices, Inc. Method for SOC performance and power optimization

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2002165B2 (de) * 1970-01-19 1972-05-10 Siemens AG, 1000 Berlin u. 8000 München Datenverarbeitungsanlage, bei der programmunterbrechungen vorgesehen sind
US3685020A (en) * 1970-05-25 1972-08-15 Cogar Corp Compound and multilevel memories
US4059851A (en) * 1976-07-12 1977-11-22 Ncr Corporation Priority network for devices coupled by a common bus
US4091447A (en) * 1976-07-19 1978-05-23 Union Carbide Corporation Interrupt control system for a microcomputer
US4152761A (en) * 1976-07-28 1979-05-01 Intel Corporation Multi-task digital processor employing a priority
US4090238A (en) * 1976-10-04 1978-05-16 Rca Corporation Priority vectored interrupt using direct memory access
US4181941A (en) * 1978-03-27 1980-01-01 Godsey Ernest E Interrupt system and method

Also Published As

Publication number Publication date
DE3013070A1 (de) 1980-10-30
US4237535A (en) 1980-12-02
JPS564829A (en) 1981-01-19
JPS5936770B2 (ja) 1984-09-05

Similar Documents

Publication Publication Date Title
DE3013070C2 (de) Schaltungsanordnung zur Bearbeitung von aus mehreren peripheren Geräten herangeführten Anforderungssignalen innerhalb einer datenverarbeitenden Einrichtung
DE2230830C2 (de) Datenverarbeitungsanlage
EP0952520B1 (de) Vorrichtung zur fehlertoleranten Ausführung von Programmen
DE2755897C2 (de)
DE2313724C3 (de) Elektronische Datenverarbeitungsanlage mit einer Anzahl von Datengeräten, die mit einem gemeinsamen Kontroller nach dem Unterberechnungsprinzip verkehren
DE2657848C2 (de)
DE2755952C2 (de)
DE2750721A1 (de) Ein/ausgabe-system
DE2646163B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2726811A1 (de) Daten-management-systeme fuer rechenanlagen
DE1299145B (de) Schaltungsanordnung zum Steuern von peripheren Ein- und Ausgabegeraeten von Datenverarbeitungssystemen
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2806024A1 (de) Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit
DE1929010B2 (de) Modular aufgebaute datenverarbeitungsanlage
DE2713253A1 (de) Programmlader fuer ein steuergeraet
DE2801563A1 (de) Dialogprozessor
DE2926322A1 (de) Speicher-subsystem
EP0062141B1 (de) Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem
DE68921676T2 (de) Flexibles Diagnosesystem, anpassbar an Datenverarbeitungssysteme verschiedener Grösse.
DE3043012A1 (de) Einrichtung zum unabhaengigen betrieb mehrerer untereinheiten in einem informationsverarbeitungssystem durch verschiedene benutzer
DE2351890A1 (de) Multiplexereinrichtung
DE2142374C2 (de) Schaltungsanordnung zur Auswahl und ggfs. erfolgenden Modifizierung von Datenzeichen
DE69122001T2 (de) Integrierte Schaltung mit einer Standardzelle, einer Anwendungszelle und einer Prüfzelle
DE2759120A1 (de) Prozessor fuer datenverarbeitungssysteme
DE2717748A1 (de) Steuersystem fuer einen bedienungstisch

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: UNISYS CORP. (N.D.GES.D.STAATES DELAWARE), BLUE BE

8328 Change in the person/name/address of the agent

Free format text: EISENFUEHR, G., DIPL.-ING. SPEISER, D., DIPL.-ING. RABUS, W., DR.-ING. BRUEGGE, J., DIPL.-ING., 2800 BREMEN MAIWALD, W., DIPL.-CHEM.DR., PAT.-ANWAELTE, 8000 MUENCHEN

8339 Ceased/non-payment of the annual fee