DE2555963C2 - Einrichtung zur Funktionsmodifizierung - Google Patents

Einrichtung zur Funktionsmodifizierung

Info

Publication number
DE2555963C2
DE2555963C2 DE2555963A DE2555963A DE2555963C2 DE 2555963 C2 DE2555963 C2 DE 2555963C2 DE 2555963 A DE2555963 A DE 2555963A DE 2555963 A DE2555963 A DE 2555963A DE 2555963 C2 DE2555963 C2 DE 2555963C2
Authority
DE
Germany
Prior art keywords
instruction
signal
program
modification
register
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
DE2555963A
Other languages
English (en)
Other versions
DE2555963A1 (de
Inventor
Arnold Dipl.-Ing. 7530 Pforzheim Blum
Horst Von Der Heyden
Fritz Dipl.-Ing. Irro
Stephan 7030 Boeblingen Richter
Helmut 7405 Dettenhausen Schaal
Hermann 7031 Gaertringen Schulze-Schoelling
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.)
IBM Deutschland GmbH
Original Assignee
IBM Deutschland 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 IBM Deutschland GmbH filed Critical IBM Deutschland GmbH
Priority to DE2555963A priority Critical patent/DE2555963C2/de
Priority to US05/725,757 priority patent/US4109311A/en
Priority to CH1235876A priority patent/CH601857A5/xx
Priority to GB44531/76A priority patent/GB1533770A/en
Priority to FR7633196A priority patent/FR2334999A1/fr
Priority to IT29130/76A priority patent/IT1070413B/it
Priority to JP51138593A priority patent/JPS5272547A/ja
Publication of DE2555963A1 publication Critical patent/DE2555963A1/de
Application granted granted Critical
Publication of DE2555963C2 publication Critical patent/DE2555963C2/de
Expired 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/4825Interrupt from clock, e.g. time of day
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/226Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/268Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming

Description

Die Erfindung betrifft eine Einrichtung zur Funktionsmodifizierung nach dem Oberbegriff des Anspruchs 1.
In elektronischen Datenverarbeitungsanlagen der unteren Leistungsklasse kann ein Instruktionssatz nicht beliebig groß gemacht werden, da große Instruktions-
sätze die Anlagen verteuern und auf das Niveau größerer Anlagen anheben, was für die Zwecke kleinerer Anwender unerwünscht ist
Um aber trotzdem auch bei kleineren Anlagen einen instruktionssatz zur Verfügung zu haben, der ein ausreichendes Maß an Flexibilität bei der Programmierung gewährt, hat man schon vorgeschlagen, unter bestimmten Voraussetzungen bestimmte Instruktionen anders zu interpretieren, als im NormalfalL
In der Makroebene wird dieses durch Verzwe:gen zu anderen Interpretationsroutinen ermöglicht, wobei aber hierzu eine relativ aufwendige Steuerlogik erforderlich ist
In der Mikroebene kann die Anzahl der von den _ Mikroinstruktionen auszuführenden Funktionen dadurch erhöht werden, daß, wie in der DE-OS 23 45 005 beschrieben ist, ein Funktionssteuerregister änderbaren Inhalts vorgesehen wird, das bei der Decodierung von Mikroinstruktionen diesen zugeordnete Information an den Mikroinstruktionsdecodierer liefert, so daß dieser aus der Makroinstruktion und der im Funktionssteuerregister enthaltenen Information die auszuführende Funktion bildet Die IdentifizieruKg einer zu modifizierenden Mikroinstruktion ist bei dem hier beschriebenen Monoprozessor relativ leicht zu realisieren.
Bei Datenverarbeitungsanlagen, die über eine oder mehrere Verarbeitungseinheiten verfugen, in denen im Multiprogrammbetrieb mehrere Steuer- oder Mikroprogramme ablaufen, indem den einzelnen Programmen Verarbeitungszeitscheiben zugeteilt werden, so daß in jedem betrachteten Augenblick die betreffende Verarbeitungseinheit für die Dauer einer Zeitesheibe nur von einem bestimmten Programm gesteuert wird (vgl. DE-PS 22 47 735), ist eine Funktionsmodifizierung ebenfalls wünschenswert.
Eine Funktionsmodifizierung bei solchen zeitscheibengesteuerten Verarbeitungseinheiten ist aber im allgemeinen nur sehr schwierig zu realisieren, da sichergestellt sein muß, daß die internen oder externen Steuerkriterien, die eine Funktionsmodifizierung erforderlich machen, nur während der gerade ablaufenden Mikroinstruktion entstehen und aktiv sind und auch nur einen speziellen Steuerungskomplex in der Verarbeitungseinheit oder ggf. in der angeschlossenen Schnittsteile der Verarbeitungseinheit zu ihren Peripheriegeräten, falls hier im Rahmen der Gesamtaufgabe der Datenverarbeitungsanlage der betreffenden Verarbeitungseinheit die Steuerung der Peripheriegeräte übertragen ist, betreffen.
Die Aufgabe der Erfindung besteht deshalb darin, eine wirtschaftliche und zuverlässige Einrichtung anzugeben, mit der in einem zeitscheibengesteuerten Prozessor — auch Mikroprozessor — eine Funktionsmodifizierung durchgeführt werden kann.
Gelöst wird diese Aufgabe der Erfindung durch die im Hauptanspruch angegebenen Merkmale.
Weitere Ausgestaltungen und vorteilhafte Weiterbildungen des Gegenstandes der Erfindung sind den Unteransprüchen zu entnehmen.
Durch die Erfindung wird also der Vorteil erzielt, daß für Datenverarbeitungsanlagen der unteren Leistungsklasse, die über Verarbeitungseinheiten mit zeitscheibengesteuerter Multiprogrammierung verfügen, mit Hilfe einer logischen Synchronisation Funktionsmodifizierungen auf wirtschaftliche und auch zuverlässige Weise vorgenommen werden können.
Im folgenden wird ein Ausführungsbeispiel der Erfindung anhand der Zeichnungen erläutert Es zeigt F i g. 1 das Blockschaltbild einer modular aus mehreren Verarbeitungseinheiten aufgebauten Datenverarbeitungsanlage,
Fig.2 das Blockschaltbild einer Einrichtung zur Funktionsmodifizierung,
Fig.3 das Blockschaltbild einer Einrichtung innerhalb einer Verarbeitungseinheit zur Steuerung der Funktionsmodifizierung,
F i g. 4 das Blockschaltbild der in einer zugeordneten Schnittstelle angeordneten Einrichtung zur Funktionsmodifizierung,
F i g, 5 ein Impulszeitdiagramm zur Darstellung der zeitlichen Abläufe bei der Funktionmodifizierung und
F i g. 6 und 7 Blockschaltbilder zur Veranschaulichung eines zeitscheibengesteuerten Multiprogrammbetriebs.
F i g, 1 zeigt das Blockschaltbild einer elektronischen Datenverarbeitungsanlage, die aus einer zentralen Einheit (CPU) 1 und aus über jeweils Schnittstellensteuerungen (FE) 6 angeschalteten Ein/Ausgabegeräten (I/O) 7 bis 10 besteht Die Zentraleinheit 1 verfügt über einen Hauptspeicher 2, an den über ein Sammelleitungs-Netzwerk mehrere Verarbeitungseinheiten (PU 1 bis 3) 3 bis 5 angeschlossen sind, welche die verschiedensten Funktionen der Zentraleinheit wahrnehmen. Die Verarbeitungseinheit 3 beispielsweise steuert Tastatur KJB und Bildschirm DiSP der Zentraleinheit für den Dialog mit der Anlage, die Verarbeitungseinheit 4 kann beispielsweise die Steuerung der problemorientierten Programme ausführen, während der Verabeitungseinheit 5 die Steuerung des Druckers 8, der Plattenspeicher 9 sowie der Bandspeicher 10 übertragen ist
Insbesondere bei Datenverarbeitungsanlagen der unteren Leistungsklasse ist es vorteilhaft die zu bearbeitenden Aufgaben in den Verarbeitungseinheiten 3 bis 5 im Multiprogramm-Betrieb durchzuführen, da man auf diese Weise zu einem insgesamt günstigeren Preis-/Leistungsverhältnis gelangt
Weiterhin von Vorteil für dieses Preis-/Leistungsverhältnis ist, wenn der Multiprogrammbetrieb auf der Basis der an sich bekannten (vgl. DE-PS 22 47 735) Zeitscheibensteuerung durchgeführt wird. Es werden bei dieser Zeitscheibensteuerung sequentiell jedem Programm Zeitscheiben zugeteilt während deren Dauer einem bestimmten Programm alle erforderlichen Resourcen der Datenverarbeitungsanlage zu seiner Ausführung zur Verfügung stehen. Für die Dauer der nächsten Zeitscheibe steht dann die Datenverarbeitungsanlage ausschließlich dem in der Sequenz nachfolgenden Programm zur Verfügung.
Diese Zuteilung der Zeitscheiben kann entweder starr erfolgen, d. h. jedem Programm steht gleich viel Maschinenzeit zur Verfügung oder sie kann dynamisch vorgenommen werden, wobei dann dem Programm mit der höchsten Dringlichkeit oder der höchsten Anforderung an Verarbeitungszeit auf Kosten eines oder mehrerer Programme mit niedrigerer Dringlichkeit oder Arbeitszeitanforderung mehr Zeitscheiben für seine Verarbeitung zugeteilt werden.
Die Realisierung von η unabhängig voneinander laufenden Programmen erfordert zunächst einen Speicher, z.B. (ALS) 74 in Fig.6, in dem π Instruktionsadressen gespeichert sind. Die variable Verabeitungszeit-Zuteilung (im folgenden kurz Rechnerzeit genannt) macht einen weiteren Speicher (IWS) 73 zur Speicherung von Indexwörtern (IW) 71 erforderlich, die aus einem Programmzeiger (Programmadresse) PTR und einer Verbindungsadresse LINK bestehen.
Das Indexwort IW enthält also zwei Informationen: Die erste, der sogenannte Programmzeiger PTR, gibt an, welches von π Programmen der durch dieses Indexwort definierten Zeitscheibe zugeteilt ist Die beispielsweise in binärer !Codierung vorliegende Information des Zeigers wird zu dem Adressenregister (AAR) 75 des Speichers 74, in dem die η Instruktionsadressen gespeichert sind, übertragen, so daß nach ihrer Decodierung (in der gesamten Beschreibung sind die zwischen Adressenregister und Speicher jeweils geschalteten Adressendecodierer aus Vereinfachungsgründen nicht dargestellt) an der adressierten Speicherstelle die Adresse der als nächstes auszuführenden Mikroinstruktion ausgelesen werden kann.
Diese Instruktionsadreüse wird, wie es üblich ist, zu dem Adreßregister (CSAR) 77 des Steuerspeichers (CS) 76 übertragen, decodiert und zum Ausleser, der als nächstes auszuführenden Instruktion aus dem Steuerspeicher verwendet
Der zweite Teil der Information im Indexwort ist die sogenannte Verbindungsadresse LINK, welche die Adresse des nächsten zu verwendenden Indexwortes darstellt Mit Hilfe dieser Verbindungsadressen können die Zeitscheiben in der gewünschten Reihenfolge aneinander gesetzt werden. Mit der Verbindungsadresse wird der Indexwortspeicher 73 über das zugehörige Indexwort-Adressenregister (IWSAR) 72 und den nicht dargestellten Decodierer angesteuert An der adressierten Speicherstelle wird dann das nächste Indexwort ausgelesen, das ebenfalls wieder aus dem Programmzeiger PTR und der Verbindungsadresse LINK besteht
Zweckmäßigerweise ist der Indexwortspeicher 73 so ausgelegt, daß er mehr Indexworte speichern kann, als voneinander unabhängige Programme in den Verarbeitungseinheiten 3 bis 5 in F" i g. 1 laufen sollen. Auf diese Weise erlaubt ein großer Indexwortspeicher 73 die zur Verfügung stehende Rechnerzeit optimal zu verteilen. Sind beispielsweise vier Programme für eine Verarbeitungseinheit vorgeseien und wählt man eine Kette von 16 Indexwörtem, dann kann ein einzelnes Programm V]6 bis 13/i6 der Gesamtrechenzeit belegen. Tritt einmal der Fall auf, daß die übrigen Programme kurzzeitig nicht laufen müssen, dann kann diesem einen Programm sogar die volle Rechenzeit von 16/ib zugeteilt werden.
Die einzelnen Programme können sich selbsttätig Rechenzeit zu- oder abschalten, wobei diese Rechenzeit natürlich von einem oder mehreren Programmen genommen werden muß, das oder die gerade unter unkritischen Zeitbedingungen läuft oder laufen.
F i g. 7 zeigt noch einmal etwas ausführlicher den Mechanismus für die Zuieilung der Zeitscheiben. Die Indcxwörter werden, wie dieses Beispiel zeigt, aus dem Indexwortspeicher 73 in F i g. 6 in einen Indexwort-Pufferspeicher (IWB) 81 in Fig.7 übertragen. Wie aus Fig.7 zu erkennen ist, können in der betrachteten Verarbeitungseinheit (PU 1) drei voneinander unabhängige Programme PGMO bis PGM2 ablaufen. Das erste aus dem Pufferspeicher 81 ausgegebene Indexwort 82 ruft mit seinem Programmzeiger PTR über die Leitung 89 im Instruktions-Adressenspeicher 74 die erste Instruktionsadresse IARO ab, mit deren Hilfe im Programmspeicher 76 eine zu dem angegebenen Programm als nächstes auszuführende Instruktion, hier eine Mikroinstruktion INi aber die Ausgabeleitung 78 in das Instruktions-Adresse nregister der betrachteten Verarbeitungseinheit übertragen wird, wenn diesem Programm Rechenzeit zur Verfügung gestellt werden soll. Dieses unterbleibt, wenn dieses Programm momentan nicht arbeiten soll. Mit der Verbindungsadresse LINK wird dann das nächste Indexwort 83 abgerufen und so fort, bis ein Rechnerstop, aus welchen Gründen auch immer, vorliegt
Diese dynamische Zeitscheibensteuerung ist die Basis, auf der die Funktionsänderung, d. h. die Modifizierung einer oder mehrerer Instruktionen eines oder mehrerer Programme, im vorliegenden Falle Steuerprogramme, beruht. Insbesondere bei Datenverarbeitungsanlagen der unteren Leistungsklasse ist diese Funktionsmodifizierung vorteilhaft, da sie einen kleineren Mikroinstruktionscode und damit auch einen kleineren Steuerspeicher erfordert und eine einfachere und flexiblere Mikroprogammierung ermöglicht. Diese Funktionsoder Mikrobefehlsmodifizierung ist, wie Fig.5 zeigt deshalb möglich, weil aufgrund der Programmzeigerlogik (PTR-LOG) 22 in F i g. 2 die Verarbeitungseinheit, noch während die augenblickliche Mikroinstruktion ausgeführt wird, schon weiß, welchem Programm die als nächste auszuführende Mikroinstruktion angehört Fig.5 zeigt in der zweiten Zeile für die gerade ablaufende Mikroinstruktion den Programmzeiger PTRO bis PTR 2, der angibt, welchem Programm von den möglichen Programmen PGMO bis PGM 2 diese gerade laufende Mikroinstruktion angehört In der dritten Zeile ist der Zugriffszeiger ACC PTR dargestellt, mit dessen Hilfe die gerade ablaufende Mikroinstruktion in dem vorhergehenden Zyklus abgerufen wurde. Wenn, wie in F i g. 5, die betrachtete Mikroinstruktion, die dem Programm PGM1 angehört, im zweiten Zyklus (vgl. oberste Zeile) verarbeitet wird, dann wurde sie im vorhergehenden Zyklus 1 mit Hilfe des Zugriffszeigers .4CC PTR abgerufen.
Da nun die Verarbeitungseinheit stets einen Zyklus früher weiß, wann eine Mikroinstruktion eines bestimmtem Programmes abläuft, können auch zeitgerechte Aktionen zur Modifizierung der Mikrobefehle durchgeführt werden. In Fig.2 ist zu sehen, daß die
η : I„„:i, /DTD Ι Γ\Π\ tO /ί!ο ΙπίΛηηοΐίηη
t ] UgI aiU1ll£.V1gVl IVgm \» * »x UW/ «.«. ^i*- mivuimuvn
über den Zugriffszeiger ACCPTR über die Leitung 16 zu einer Vergleichslogik (COMP-LOG) 18 überträgt, in der der Zugriffszeiger mit einem gewünschten und vorher gespeicherten Zeiger PGMID des gewünschten Programms, der über die Leitung 12 anliegt verglichen wird.
Bei einem positiven Vergleichsergebnis wird dann von dem über die Leitung 15 aus dem Steuerkomplex (PU CTRL) 23 der Verarbeitungseinheit 3 übertragenen nächsten Taktimpuls t in einem ersten Vergleicher 18, der in der in der Schnittstelle 6 untergebrachten externen Steuerung (EH) angeordnet ist ein Funktionsändcmngssigr.a! FCH G erzeugt, das über die Leitung 19 zu der Modifizierungssteuerung (MODCTRL) 17 übertragen wird. Bei dem Vorliegen externer oder interner Änderungsbedingungen ECHC, die über die Leitung 11 an der Modifizierungssteuerung 17 anliegen, wird dann, wenn das Funktions-Änderungssignal FCHG und außerdem ein Signal COMPOP, das aufgrund eines positiv ausgefallenen Vergleichs des Operationscodes OP im Operationsregister, z. B. 47 in Fig.3, mit einem Identifizierungssignal, z.B. OPO in einem Register 62 in Fig.4, das eine gewünschte, zu identifizierende Instruktion kennzeichnet, erzeugt wird, vorliegt, ein Funktionsänderungs-Steuersignal FCHCTRL erzeugt und über die Leitung 11 zu dem Steuerkomplex 23 in der Verarbeitungseinheit 3 übertragen, wo dann die gewünschte Mikroinstruktion
des gewünschten Programms in der gewünschten Weise geändert wird.
Fig.3 und 4 zeigen weitere Details in der Verarbeitungseinheit, z. B. 3 in F i g. 1 sowie in der Schnittstellensteuerung z.B. 6 in Fig. 1, die den genauen Arbeitsablauf für die Modifizierung einer gewünschten Instruktion in einem bestimmten Programm erkennen lassen.
Wenn sich beispielsweise die im Zyklus 1 in F i g. 5 zu dem Programm PGMO gehörende Mikroinstruktion im Operationsregister (OP-REG) 47 befindet, die mit dem in F i g. 4 wegen Überschreitung des linken Randes nicht mehr dargestellten Zugriffszeigers abgerufen wurde, dann ist bereits, aufgrund der im Zusammenhang mit den F i g. 6 und 7 erläuterten Zeitscheibensteuerung, der Zugriffszeiger für eine Instruktion des Programms PGM1 am Ausgang des Zugriffszeiger-Speichers (APS) 38 verfügbar. Wie Fig.3 weiter zeigt, wird dieser Zugriffszeiger zum Adressenregister (AAR) 33 des Adressenarbeitsspeichers (ALS) 32 übertragen. Aus diesem Speicher wird die Instruktionsadresse der /-ten Mikroinstruktion ausgelesen (RD ALS in F i g. 5) und in das Adressenregister (CSAR) 21 des Steuerspeichers (CS) 20 übertragen. Im Zyklus 2 steht dann nach dem Auslesen des Steuerspeichers (RDCS in Fig.5) diese gerade ausgelesene Mikroinstruktion für eine Verarbeitung zur Verfügung. Die mit der Instruktionsadresse iARi abgerufene Mikroinstruktion iNj wird mit Hilfe eines Signals SETOPREG, dem Steuersignal eines zwischen dem Steuerspeicher 20 und dem Operationsregister 47 angeordneten UND-Tores (nicht dargestellt) in das Operationsregister übertragen. Es folgen dann, wie F i g. 5 zeigt, zwei Lesezyklen RD DLS des Datenarbeitsspeichfcfs (DLS) 46, mit denen beispielsweise die beiden Operanden OPD A, und OPD Bi in die beiden Operandenregister (A-REG) 49 und (B-REG) 50 eingegeben werden. Im zweiten Teil des zweiten Zyklus (ALURES in Fig.5) steht dann das durch den Operationscode definierte Verknüpfungsresultat RES, der beiraciiicieii rviikroinstruktion zur Verfügung.
Gesteuert wurde diese Verknüpfung mit Hilfe des Operationscodes, der vom Operationsregister 47 in den Operationsdecodierer (OP-DEC) 48 übertragen wurde und an seinem Ausgangstor Steuersignale erzeugt, die die erforderlichen Tore im Datenfluß durchschaltet (in Fig.3 sind von den vielen Torschaltungen nur die UND-Tore 52,53 und 56 dargestellt).
Zum zuvor erwähnten Abruf der Operanden aus dem Datenarbeitsspeicher 46 werden die im Operationsregister 47 befindlichen Operandenadressen zu dem Adressenregister (DAR) 40 des Datenarbeitsspeichers 46 übertragen. Diese werden dann von dort in die beiden Qperandenregister 49 und 50 eingelesen. Beirr: Rückschreiben des Ergebnisses, das beispielsweise in der arithmetischen und logischen Einheit (ALLJ) 51 gebildet wurde, gelangt dieses über ein Datenregister (D-REG) 45 am Ende des Zyklus 2 und Anfang des Zyklus 3 mit Hilfe eines Schreibzyklus (RWDLS in F i g, 5) in die entsprechende Stelle im Datenarbeitsspeicher 46.
Der Zugriffszeiger ACCPTRI1 der im vorliegenden Beispiel betrachtet wird, gelangt auch über die Leitung 16 zur Schnittstelle 6, die in Fig.4 dargestellt ist Wie diese F i g. 4 zeigt, sind die Schaltkreise zur Erzeugung des Funktionsänderungs-Steuersignals FCHCTRL in der Schnittstelle 6 zwischen einer Verarbeitungseinheit 3 und einem Peripheriegerät, z.B. 7 (dargestellt in Fig. 1) angeordnet Dieses ist dann von Vorteil, wenn im wesentlichen externe Änderungs-Bedingungssignale in den angeschlossenen Peripheriegeräten Funktionsmodifizierungen erfordern.
Wenn aber mehr interne Änderungs-Bedingungssignale zu verarbeiten sind, ist es vorteilhafter, die genannten Schaltkreise in der betreffenden Verarbeitungseinheit selbst vorzusehen.
Der Zugriffszeiger ACCPTRi wird also über die Leitung 16 auch zu einer Vergleichsschaltung 58
ίο übertragen. Diese Vergleichsschaltung 58 vergleicht den genannten Zugriffszeiger mit der in einem Register 61 gespeicherten Programm-Information (CPi), die ein gewünschtes zu modifizierendes Programm identifiziert und somit die gleiche Datenform aufweisen kann, wie die zu vergleichenden Zugriffszeiger selbst. Diese Programmidentifizierungs-Information CPi aller gewünschter zu modifizierender Programme PGMi Hegt in paralleler Form über die Leitung 57 an der Vergleichsschaltung 58 an. Diese Vergleichsschaltung 58 kann einen durchaus konventionellen Aufbau besitzen, bei dem eine Anordnung von EXKLUSIV-ODER-Toren vorgesehen ist, von denen jedes beispielsweise 2 Eingänge hat
Die Zahl der EXKLUSIV-ODER-Tore in jeder Gruppe entspricht der Zahl der Bits, die einen Zugriffszeiger aufweist Die Zahl der Gruppen wiederum entspricht der Zahl der Programmidentifizierungs-Informationswörter CPi, die in dem Register (COMP PTR REG) 61 speicherbar sind. Auf diese Weise kann jedes Bit jedes Informationswortes im Register 61 mit jedem Bit des Zugriffszeigers verglichen werden. Die Ausgänge der EXKLUSIV-ODER-Tore einer Gruppe können dabei über ODER-Tore zusammengefaßt werden und auch die Ausgänge der den Gruppen zugeordneten ODER-Tore wieder über ein weiteres ODER-Tor zusammengefaßt werden, so daß die Ausgangsleitung 59 des nachgeschalteten ODER-Tores das Vergleichssignal COMP PTR liefert.
Wie F i g. 5 in der vierten Zeile von oben zeigt, konnte für das gewählte Beispiel dieses Signal COMPPTR im ersten Zyklus gebildet werden. Das Funktionsänderungssignal F CH G, also wie F i g. 4 erkennen läßt, das Ausgangssignal einer Verriegelungsschaltung 60, kann aber erst gebildet werden, wenn der erforderliche Taktimpuls t über die Leitung 15 von der Taktsteuerung 44 (in F i g. 3) der zugeordneten Verarbeitungseinheit 3 abgegeben wurde. Dieses Taktsignal ist in F i g. 5 in der sechsten Zeile von oben dargestellt Es setzt kurz nach seinem Eintreffen die Verriegelungsschaltung 60, die ihrerseits dann das Funktionsänderungssignal FCHG erzeugt und über die Leitung 19 zu einem UND-Tor 31 überträgt
Damit ist eine von drei Voraussetzungen für eine Funktionsmodifikation der entsprechenden Verarbeitungseinheit 3 erfüllt Die zweite Voraussetzung ist eine Bedingung, die extern oder intern vorliegen muß, auf die
' die Einrichtung eben mit dieser Funktionsmodifizierung
reagieren soll. Die Übertragung dieser Bedingung erfolgt über ein ODER-Tor 64, an dem z. B. externe
Änderungsbedingungen in Form von Signalen ECHC anliegen. Ein solches Signal wird in einem externen Register (EXT-REG) 63 zwischengespeichert Am Ausgang des Registers 63 steht dieses externe Änderungs-Bedingungssignal über die Leitung 67 zur Verfügung und steuert das UND-Tor 31. Da es aber von wesentlicher Bedeutung ist, nicht nur die Adresse des zu ändernden Programms FGMi, also den Programmzeiger PTRi, sondern auch die zu modifizierende
Instruktionen zu kennen, muß also noch ein Kriterium erzeugt werden, das die gewünschte zu modifizierende Funktion identifiziert Zu diesem Zweck wird über die Leitung 13 der Operationscode aus dem Operationsregister 47 in der Verarbeitungseinheit 3 in F i g. 3 zu der Vergleichsschaltung 68 in der Schnittstelle 6 in F i g. 4 übertragen. In einem in der Schnittstelle 6 befindlichen Register 62 sind die Operationscode z. B. OPO bis OPZ der gewünschten zu modifizierenden Instruktionen zur Durchführung eines Vergleichs gespeichert, der dem Vergleich sehr ähnlich ist, mit dem die Programmzeiger öin der bereits erläuterten Weise miteinander verglichen •werden. Dieses Register 62 kann ähnlich wie das 'Register 61 durch besondere Mikroinstruktionen mit den gewünschten Operationscodes geladen werden. Als Ergebnis eines positiven Vergleichs steht auf der Ausgangsleitung 65 der Vergleichsschaltung 68 das instruktionsidentifizierungssignai COMP OP zur Verfügung, das die dritte Koinzidenzbedingung für das UND-Tor 31 liefert, dessen Funktionsänderungs-Steuersignal FCHCTRL letztendlich die Funktionsmodifizierung steuert Die Koinzidenz für dieses Tor ist dann erfüllt, wenn gleichzeitig sowohl das Funktionsänderungssignal FCHG, das Instruktionsidentifizierungssignal COMP OP und ein Funktionsänderungs-Bedingungssignal E CH C gleichzeitig vorliegen.
F i g. 5 zeigt für das gewählte Beispiel, daß im zweiten Zyklus alle drei wesentlichen Signale für die Erzeugung des Funktionsänderungs-Steuersignals vorhanden sind (vgl. fünfte und siebte Zeile von oben und letzte Zeile). Wie das Beispiel der Fig.5 weiter zeigt, kann das Funktionsänderungs-Steuersignal im dritten Zyklus nicht mehr gebildet werden, da zwar ein externes Änderungs-Bedingungssignal ECHC, jedoch kein Funktionsänderungssignal FCHG und kein Operationscode-Vergleichssignal COMP OP mehr vorliegen. Auch im sechsten Zyklus in Fig.5 kann das Funktionsänderungs-Steuersignal FCHCRTL nicht
rungssignal (vgl. siebte Zeile von oben) und das Operationscode-Vergleichssignal (vgl. letzte Zeile) vorliegen, ein externes Änderungs-Bedingungssignal (vgl. fünfte Zeile von oben) aber fehlt
Wie aus F i g. 5, vierte Zeile von oben zu erkennen ist wurde im fünften Zyklus ein neues COMP PTR-Signal erzeugt das im sechsten Zyklus eine Modifizierung einer Instruktion des Programms PGM 2 gestattet hätte.
Das Funktionsänderungs-Steuersignal FCHCTRL, das letztendlich die gewünschte Funktionsmodifizierung steuert wird über die Leitung 11 aus der Schnittstelle 6 in Fig.4 zur zugeordneten Verarbeitungseinheit 3 in F i g. 3 übertragen. Hier befindet sich als wesentliches Element ein Modifizierungs-Pufferspeicher (MB) 29, in dem die für eine Modifizierung notwendige Steuerinformation gespeichert ist Wie Fig.3 zeigt kann dieser Modifizierungs-Pufferspeicher 29 mit Hilfe besonderer Mikroinstruktionen über das Operationsregister 47 für jede zu modifizierende Mikroinstruktion spezifisch geladen werden. Dieser Ladevorgang wird mit Hilfe des UND-Tores 56 gesteuert Die Speicherpositionen des Pufferspeichers 29 werden durch die in einem Register 25 gespeicherte Programmzeiger-Information über das Adressenregister 41 und einen wieder nicht dargestellten Adressendecodierer adressiert Die im Register 25 gespeicherte Programmzeiger information PTRO bis PTR2 gibt die Adresse des gerade laufenden Programms an. Daher kann im Falle einer Modifizierung die für eine Instruktion dieses Programms vorgesehene Modifizierungs-Information aus dem Pufferspeicher 29 ausgelesen werden. Dieser Auslesevorgang wird durch ein UND-Tor 42 gesteuert, dessen anderer Eingang mit der Leitung 11 verbunden ist, die das Funktionsänderungs-Steuersignal von der Schnitttstelle her überträgt Es sind leicht Erweiterungen dieser in F i g. 3
dargestellten Anordnung möglich, die einen Pufferspeieher 29 nicht nur in Abhängigkeit von dem gerade laufenden Programm sondern auch in Abhängigkeit von einer bestimmten Mikroinstruktion ansteuern können, um dann aus den angesteuerten Stellen spezifische Änderungs-Information auszulesen. Die Modifizierungs-Information wird nach ihrer Decodierung an der Leitungsgruppe XL an den im Datenfluß der Verarbeitungseinheit 3 erforderlichen Stellen verfügbar gemacht. Eine Ausgangs'ieiiung des Deeodierers 43 ist zur weiteren Veranschaulichung einer Modifizierungsoperation mit einem UND-Tor 54 verbunden, dessen weiterer Eingang mit dem Ausgang eines Modifizierers 55 verbunden ist der das Resultat einer j4Li/-Operation um den Wert +1 verändert. F i g. 5 zeigt in der dritten Zeile von unten einen Pfeil, der mit MOD bezeichnet ist und den Zeitpunkt veranschaulicht zu dem diese (+^-Modifizierung des Resultats wirksam wird. In dieser oder ähnlicher Weise, sind eine Vielzahl von Modifizierungs-Operationen an verschiedenen Stellen der Verarbeitungseinheit, sowie auch in der Schnittstelle 6 in F i g. 4 möglich.
Der weitere Operationslauf, wird in der bereits eingangs erwähnten Weise durch Abruf neuer Indexwörter Wi aus dem Indexwortspeicher 34 gesteuert Mit Hilfe der im Speicher 36 gespeicherten LINK-Adresse wird dann das nächste Indexwort aus dem Indexwortspeicher ausgelesen.
Die Register 61 und 62 in F i g. 4, die die Programmund Instruktionsidentifizierungs-Information (CPi und OPi) enthalten, die solche Instruktionen derjenigen Programme anheben, die eine Modifizierung prfahrpn sollen, können, wie bereits erwähnt wurde, mit Hilfe besonderer Mikroinstruktionen geladen werden. Die hierzu erforderlichen Instruktionen werden aus dem Steuerspeicher 20 in F i g. 3 in das Operationsregister 47 eingelesen und derart weiterverarbeitet daß mit einem Adressenteil des Instruktionswortes der Datenarbeitsspeicher 46 adressiert und die gewünschte Identifizierungs-Information ausgelesen wird. Der Operationscodeteil sorgt nach seiner Decodierung im Operationsdecodierer 48 dafür, daß die aus dem Steuerspeicher ausgelesene Identifizierungs-Information über das UND-Tor 53 und die Leitung 24 in das Register 62 in Fig.4 übertragen wird, wenn es sich um eine Instruktions-Identifizierungs-Information händeli. Die aus dem Steuerspeicher ausgelesene Information wird, ebenfalls vom Operationsdecodierer gesteuert über das UND-Tor 52 und die Leitung 12 in das Register 61 in Fig.4 übertragen, wenn es sich um eine Programm-Identifizierungs-Information handelt
In ähnlicher Weise kann auch die Modifizierungsinformation über das UND-Tor 56 in den Identifizierungs-Pufferspeicher 29 eingelesen werden. Fig.3 zeigt für diesen Fall eine alternative Lösung insofern, als beispielsweise die aus dem Steuerspeicher 20 ausgelesene Instruktion neben dem Operationscode bereits direkt die gewünschte Modifizierungsinformation enthält Diese zeitlichen Abläufe sind in F i g. 5 allerdings nicht dargestellt
F i g. 5 zeigt vielmehr in ihrem mittleren und unteren Teil den weiteren Operationsablauf, wie er eingangs bereits erläutert wurde. Im ersten Zyklus steht beispielsweise das Indexwort IW, zur Verfügung, das aus dem Zugriffszeiger ACCPTRi und der Verbindungsadresse LINK,- besteht Mit dem genannten Zugriffszeiger, der ja eine Speicheradresse darstellt, wird noch im gleichen Zyklus der Adressen-Arbeitsspeicher 32 (alle }· Angaben beziehen sich auf F i g. 3) angesteuert und die & Instruktionsadresse IAR-, ausgelesen und über das Adressenregister 21 der Steuerspeicher 20 ausgegeben. Mit Hilfe eines Einstellimpulses SETOPREG wird die aus dem Steuerspeicher 20 ausgelesene Instruktion IN,- in das Operationsregister 47 übertragen, und es werden beispielsweise durch die in dieser Instruktion enthaltenen Adressen die Operanden OPDA-, und OPDBj aus dem Datenarbeitsspeicher 46 ausgelesen und vom Operationdecodierer 48, der den Operations-
code der Instruktion decodiert, in die Register 49 und 50 übertragen. Alles dieses findet noch, wie F i g. 5 zeigt, im zweiten Zyklus statt Gegen Ende des zweiten Zyklus wird dann eine der zuvor ausführlich erläuterten Modifizierungen dieser Instruktion wirksam, und es wird am Ende des zweiten und Anfang des dritten Zyklus das modifizierte Ergebnis der ALtZ-Operation in den Datenarbeitsspeicher 46 zurückgeschrieben.
Mit der Verbindungsadresse LINKi wird dann, wie Fig.3 zeigt, über das Adressenregister 35 des Index-Wortspeichers 34 dieser adressiert, und es wird an der durch die Verbindungsadresse angegebenen Stelle das nächste Indexwort IWi+\ ausgelesen.
Auf diese Weise laufen immer neue Instruktions- und Verarbeitungszyklen in der Verarbeitungseinheit ab, bis ein Programmablauf vollständig beendet oder ein Maschinenstopp aus anderen Gründen vorgenommen wird.
Hierzu 4 Blatt Zeichnungen

Claims (9)

Patentansiprüche:
1. Einrichtung zur Funktionsmodifizierung in einer elektronischen Datenverarbeitungsanlage mit einer oder mehreren Verarbeitungseinheiten, in denen jeweils mehrere Programme zeitscheibengesteuert ablaufen, gekennzeichnet durch eine an sich bekannte Programmzeigerlogik (22; F i g. 2), die ein Identifizierungssignal (ACCPTR) liefert, dai dasjenige Programm angilbt, von dem eine Instruktion im nächsten Instruktionszyklus ausgeführt wird, durch einen ersten Vergleicher (18), in dem das jeweilige Identifizierungssignal mit einer oder mehreren Informationen (.FGM ID) verglichen wird, die das (oder die) gewünschten zu modifizierenden Programme (z.B. PGMO bis PGM2; Fig.5) ker.nzebhnet(nen) und daß bei Übereinstimmung ein Funktionsänderungssignal (FCHG) erzeugt wird, ferner durch eine Modsfzisrungssteuer-ing (17), in der ein Funktionsänderungs-Steuersignal (FCHCTRL) erzeugt wird, wenn ein Funktionsänderungssignal, ein internes oder externes Ände-"rungsbedingungssignal (ECHC) sowie ein von !einem zweiten Vergleicher (14) geliefertes Instruktionsidentifizierunssignal (COMPOP), das dieser erzeugt, wenn das Kennzeichen (OP) der als nächste auszuführenden Instruktion mit dem Kennzeichen einer gewünschten zu modifizierenden Instruktion übereinstimmt, an ihr anliegen, wobei das Funktionsänderungssteuersignal in der Instruktionsausführungseinheit (23) die gewünschte Instruktion des gewünschten Programms modifiziert.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß sowohl der erste Vergleicher (18; Fig.2) zur Programmidentifizierung als auch der zweite Vergleicher (14), zur Instruktionsidentifizierung, sowie die Modifizierungssteuerung (17) in der Schnittstelle (6; Fig. 1) zwischen einer Verarbeitungseinheit (z. B. 5) und dem zugehörigen Peripheriegerät (z. B. 8) angeordnet sind.
3. Einrichtung nach Anspruch 1 und/oder 2, dadurch gekennzeichnet, daß der erste Vergleicher (18; Fig.4), der das Funktionsänderungssignal (FCHG) erzeugt, aus einem Register (61) zur Speicherung von Programminformation (CPi), über gewünschte, zu modifizierende Programme, ferner aus einer Vergleichsschaltung (58), welche die im Register (61) gespeicherte Programminformation mit der Information (ACCPTRO bis ACCPTR2; Fi g. 3) vergleicht, die dasjenige Programm indentifiziert, von dem im nächsten Instruktionszyklus eine Instruktion ausgeführt werden soll, und bei Übereinstimmung ein Übereinstimmungssignal (COMPPTR; Fig.4) erzeugt sowie aus einem Schalter (60) besteht, der eingestellt wird, wenn gleichzeitig ein bestimmter Taktimpuls (t; F i g. 4, 5) und das genannte Übereinstimmungssignal an ihm anliegen, wobei er das Funktionsänderungssignal erzeugt und der zurückgestellt wird, wenn bei Abwesenheit des genannten Übereinstimmungssignals der nächste Taktimpuls ftf angelegt wird.
4. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß der zweite Vergleicher (14; F i g. 4), der das Instruktionsidentifizierungssignal (COMPOP) erzeugt, aus einem Register (62), in dem Information (OPO bis OP3) zur Identifizierung gewünschter zu modifizierender Instruktionen gespeichert ist sowie aus einer Vergleichsschaltung (68) besteht, der die Information des genannten Registers (62) einerseits und andererseits ein Kennzeichen (OP-, Fig.3), der als nächste auszuführenden Instruktion zugeführt werden, wobei die genannte Vergleichsschaltung nur im Falle der Übereinstimmung der beiden Informationen das Instruktionsidentifizierungssignal (COMP OP) erzeugt
5. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Modifizierungssteuerung (17; Fig.4), die das Funktionsänderungssteuersignal (FCHCTRL) erzeugt, ein Änderungsbedingungssignalregister (63) aufweist, das externe oder interne Anderungsbedingungssignale (E CH C) zwischenspeichert und über seinen Ausgang (67) einem UND-Tor (31) zuführt, das ferner das Funktionsänderungssignal (FCHG) vom ersten Vergleicher (18) und das Instruktionsidentifizierungssignal (COMPOP) vom zweiten Vergleicher (14) empfängt und das nur bei Koinzidenz aller drei genannter Eingangssignale das genannte Funktionsänderungssteuersignal erzeugt
6. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 5, dadurch gekennzeichnet, daß zur Modifizierung einer laufenden Instruktion ein iModifizierungs-Pufferspeicher (29; F i g. 3) vorgesehen ist, in dem die Modifizierungsinformation gespeichert ist der von einem Adressenregister (41) adressiert wird, dem die Adresse der augenblicklich auszuführenden Instruktion, die in einem Instruktionszeigerregister (25) gespeichert ist, zugeführt wird, so daß zu der jeweiligen modifizierenden Instruktion die Modifizierungsinformation aus dem Pufferspeicher (29) über ein UND-Tor (42) in einen Modifizierungsdecodierer (43) ausgelesen wird, wenn von der Modifizierungssteuerung (14; F i g. 4) das Funktionsänderungssteuersignal (FCHCTRL) an dieses UND-Tor angelegt wird, wobei die Ausgangssignale des Modifizierungsdecodierers (43) über die Ausgangsleitungen (XL) an den für eine Funktionsmodifizierung erforderlichen Stellen der Instruktionsausführungseinheit (23; Fig.2) verfügbar gemacht wird.
7. Einrichtung nach Anspruch 6, dadurch gekennzeichnet, daß die Ausgangssignale des Modifizierungsdecodierers (43; Fig.3) zur Steuerung von Torschaltungen (z. B. 54) verwendet werden, um Funktionen (z. B. Funktion der ALU) mit Hilfe von Modifizierern (55) direkt zu verändern.
8. Einrichtung nach einem oder mehreren der Ansprüche 1 bis 7, dadurch gekennzeichnet daß die den Vergleichern (18,14) zugeordneten Register (61, 62; F i g. 4) mit Hilfe besonderer Instruktionen mit der gewünschten Programm- und Instruktionsidentifizierungsinformation ladbar sind.
9. Einrichtung nach einem oder mehreren der Ansprüche 4 bis 8, dadurch gekennzeichnet, daß die Vergleichsschaltungen (58, 68; Fig.4) mittels EX-KLUSIV-ODER-Toren realisiert sind.
DE2555963A 1975-12-12 1975-12-12 Einrichtung zur Funktionsmodifizierung Expired DE2555963C2 (de)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE2555963A DE2555963C2 (de) 1975-12-12 1975-12-12 Einrichtung zur Funktionsmodifizierung
US05/725,757 US4109311A (en) 1975-12-12 1976-09-23 Instruction execution modification mechanism for time slice controlled data processors
CH1235876A CH601857A5 (de) 1975-12-12 1976-09-30
GB44531/76A GB1533770A (en) 1975-12-12 1976-10-26 Data processing apparatus
FR7633196A FR2334999A1 (fr) 1975-12-12 1976-10-27 Dispositif de modification de fonctions dans un systeme de traitement de donnees
IT29130/76A IT1070413B (it) 1975-12-12 1976-11-09 Apparecchiatura per la modifica di funzioni
JP51138593A JPS5272547A (en) 1975-12-12 1976-11-19 Device for correcting data processor system function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE2555963A DE2555963C2 (de) 1975-12-12 1975-12-12 Einrichtung zur Funktionsmodifizierung

Publications (2)

Publication Number Publication Date
DE2555963A1 DE2555963A1 (de) 1977-06-16
DE2555963C2 true DE2555963C2 (de) 1982-10-28

Family

ID=5964186

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2555963A Expired DE2555963C2 (de) 1975-12-12 1975-12-12 Einrichtung zur Funktionsmodifizierung

Country Status (7)

Country Link
US (1) US4109311A (de)
JP (1) JPS5272547A (de)
CH (1) CH601857A5 (de)
DE (1) DE2555963C2 (de)
FR (1) FR2334999A1 (de)
GB (1) GB1533770A (de)
IT (1) IT1070413B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3223678A1 (de) * 1981-07-27 1983-02-17 Numerik Karl Marx Veb Schaltungsanordnung zur maximalen auslastung von recheneinheiten bei zeitscheibengesteuerter mehrprogrammbearbeitung

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4247893A (en) * 1977-01-03 1981-01-27 Motorola, Inc. Memory interface device with processing capability
JPS5427741A (en) * 1977-08-03 1979-03-02 Toshiba Corp Information processing organization
US4319321A (en) * 1979-05-11 1982-03-09 The Boeing Company Transition machine--a general purpose computer
US4304497A (en) * 1979-10-19 1981-12-08 International Business Machines Corporation Detection of multiple emitter changes in a printer subsystem
US4273041A (en) * 1980-01-28 1981-06-16 International Business Machines Corporation Belt printer control architecture
US4387424A (en) * 1980-08-12 1983-06-07 Pitney Bowes Inc. Communications systems for a word processing system employing distributed processing circuitry
US4393465A (en) * 1981-04-13 1983-07-12 Burroughs Corporation Digital device for time-multiplexing multiple tasks
US4399507A (en) * 1981-06-30 1983-08-16 Ibm Corporation Instruction address stack in the data memory of an instruction-pipelined processor
US4472773A (en) * 1981-09-16 1984-09-18 Honeywell Information Systems Inc. Instruction decoding logic system
US4541045A (en) * 1981-09-21 1985-09-10 Racal-Milgo, Inc. Microprocessor architecture employing efficient operand and instruction addressing
US4450525A (en) * 1981-12-07 1984-05-22 Ibm Corporation Control unit for a functional processor
US4800485A (en) * 1982-06-01 1989-01-24 American Telephone And Telegraph Company On-line documentation facility
US4811284A (en) * 1984-03-08 1989-03-07 International Business Machines Corporation Computer terminal system with memory shared between remote devices
JPS6134605A (ja) * 1984-07-27 1986-02-18 Fanuc Ltd プログラマブルコントロ−ラの制御方式
US4670835A (en) * 1984-10-19 1987-06-02 Honeywell Information Systems Inc. Distributed control store word architecture
US5729757A (en) * 1985-05-20 1998-03-17 Shekels; Howard D. Super-computer system architectures using status memory to alter program
JPS6274189A (ja) * 1985-09-27 1987-04-04 Toshiba Corp 情報媒体
US4847755A (en) * 1985-10-31 1989-07-11 Mcc Development, Ltd. Parallel processing method and apparatus for increasing processing throughout by parallel processing low level instructions having natural concurrencies
US5021945A (en) * 1985-10-31 1991-06-04 Mcc Development, Ltd. Parallel processor system for processing natural concurrencies and method therefor
JPH071498B2 (ja) * 1985-11-28 1995-01-11 株式会社日立製作所 パルス入出力プロセッサ及びそれを用いたマイクロコンピュータ
US5010476A (en) * 1986-06-20 1991-04-23 International Business Machines Corporation Time multiplexed system for tightly coupling pipelined processors to separate shared instruction and data storage units
US5193189A (en) * 1987-10-07 1993-03-09 Allen-Bradley Company, Inc. Programmable controller with multiple priority level task processing
NL8800071A (nl) * 1988-01-13 1989-08-01 Philips Nv Dataprocessorsysteem en videoprocessorsysteem, voorzien van een dergelijk dataprocessorsysteem.
NL8800698A (nl) * 1988-03-21 1989-10-16 Philips Nv Werkwijze voor het vanuit een besturingseenheid quasi parallel besturen van een aantal perifere eenheden en stelsel voor het uitvoeren van deze werkwijze.
JPH0789328B2 (ja) * 1988-05-31 1995-09-27 日本電気株式会社 データ処理装置
US5117387A (en) * 1988-08-18 1992-05-26 Delco Electronics Corporation Microprogrammed timer processor
US5280620A (en) * 1988-12-16 1994-01-18 U.S. Philips Corporation Coupling network for a data processor, including a series connection of a cross-bar switch and an array of silos
JP2538053B2 (ja) * 1989-05-08 1996-09-25 松下電器産業株式会社 制御装置
US5142684A (en) * 1989-06-23 1992-08-25 Hand Held Products, Inc. Power conservation in microprocessor controlled devices
US5274815A (en) * 1991-11-01 1993-12-28 Motorola, Inc. Dynamic instruction modifying controller and operation method
US5649135A (en) * 1995-01-17 1997-07-15 International Business Machines Corporation Parallel processing system and method using surrogate instructions
US5768574A (en) * 1995-06-07 1998-06-16 Advanced Micro Devices, Inc. Microprocessor using an instruction field to expand the condition flags and a computer system employing the microprocessor
US5862370A (en) * 1995-09-27 1999-01-19 Vlsi Technology, Inc. Data processor system with instruction substitution filter for deimplementing instructions
US5790843A (en) * 1996-09-19 1998-08-04 International Business Machines Corporation System for modifying microprocessor operations independently of the execution unit upon detection of preselected opcodes
US6076156A (en) * 1997-07-17 2000-06-13 Advanced Micro Devices, Inc. Instruction redefinition using model specific registers
US6230259B1 (en) 1997-10-31 2001-05-08 Advanced Micro Devices, Inc. Transparent extended state save
US20010049710A1 (en) * 2000-05-16 2001-12-06 Curey Randall K. Partitioned executive structure for real-time programs
US6877084B1 (en) 2000-08-09 2005-04-05 Advanced Micro Devices, Inc. Central processing unit (CPU) accessing an extended register set in an extended register mode
US6981132B2 (en) 2000-08-09 2005-12-27 Advanced Micro Devices, Inc. Uniform register addressing using prefix byte
DE10061001B4 (de) * 2000-12-08 2005-05-04 Robert Bosch Gmbh Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem Kraftfahrzeug, sowie Speicherelement und Steuerprogramm hierfür
US20030009508A1 (en) * 2001-06-26 2003-01-09 Troia Terry A. Method and system for providing processor task scheduling
JP5217431B2 (ja) * 2007-12-28 2013-06-19 富士通株式会社 演算処理装置及び演算処理装置の制御方法
KR20140001031A (ko) * 2012-06-27 2014-01-06 삼성전자주식회사 단말 장치 및 단말 장치의 제어 방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3396371A (en) * 1964-09-29 1968-08-06 Ibm Controller for data processing system
US3363236A (en) * 1965-09-02 1968-01-09 Burroughs Corp Digital computer having linked test operation
US3470540A (en) * 1967-04-24 1969-09-30 Rca Corp Multiprocessing computer system with special instruction sequencing
US3573852A (en) * 1968-08-30 1971-04-06 Texas Instruments Inc Variable time slot assignment of virtual processors
US3718912A (en) * 1970-12-22 1973-02-27 Ibm Instruction execution unit
US3766524A (en) * 1971-06-30 1973-10-16 Ibm Dynamic time slicing control for microprogrammed controller
US3781814A (en) * 1971-10-07 1973-12-25 Raytheon Co Method and apparatus for applying source language statements to a digital computer
IT951233B (it) * 1972-04-07 1973-06-30 Honeywell Inf Systems Sistema di comando di un calcola tore mediante microprogrammazione ed estensione dinamica delle fun zioni di controllo ottenuta da reti logiche
US3868649A (en) * 1972-06-28 1975-02-25 Fujitsu Ltd Microprogram control system
JPS549456B2 (de) * 1972-07-05 1979-04-24
DE2345005A1 (de) * 1973-09-06 1975-04-10 Siemens Ag Steuerwerk fuer einen prozessor eines rechners
US3949380A (en) * 1974-04-22 1976-04-06 Honeywell Information Systems, Inc. Peripheral device reassignment control technique

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3223678A1 (de) * 1981-07-27 1983-02-17 Numerik Karl Marx Veb Schaltungsanordnung zur maximalen auslastung von recheneinheiten bei zeitscheibengesteuerter mehrprogrammbearbeitung

Also Published As

Publication number Publication date
US4109311A (en) 1978-08-22
IT1070413B (it) 1985-03-29
FR2334999A1 (fr) 1977-07-08
CH601857A5 (de) 1978-07-14
JPS5272547A (en) 1977-06-17
DE2555963A1 (de) 1977-06-16
FR2334999B1 (de) 1979-03-09
JPS5620574B2 (de) 1981-05-14
GB1533770A (en) 1978-11-29

Similar Documents

Publication Publication Date Title
DE2555963C2 (de) Einrichtung zur Funktionsmodifizierung
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE1774296C2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2756890C2 (de) Schaltungungsanordnung zur Steuerung der Datenübertragung zwischen einer zentralen Verarbeitungseinheit und einer Mehrzahl peripherer Einheiten
EP0097725B1 (de) Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen
DE2456578C2 (de) Datenverarbeitungsanlage
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE2719635A1 (de) Anordnung fuer eine erweiterung einer mikroprogrammsteuerung einer datenverarbeitungsanlage
DE1275800B (de) Steuerwerk fuer datenverarbeitende Maschinen
DE2023354A1 (de) Programmierbare Einheit und Verfahren zum Betreiben einer programmierbaren Einheit
DE2440628A1 (de) Datenverarbeitungsanlage mit mikroprogrammierung
DE1549474B2 (de) Anordnung in einer elektronischen digitalen Datenverarbeitungsanlage zur Ausführung eines ersten Befehls und gleichzeitigen Decodierung eines folgenden Befehls
DE3121742A1 (de) Mikroprogrammsteuerverfahren und -einrichtung zu dessen durchfuehrung
DE3116385C2 (de) Mikroprogramm-Steuerung
DE2548720C2 (de) Mikroprogramm-Steuerwerk
DE2617485A1 (de) Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen
DE2702722C2 (de) Einrichtung zur Verarbeitung nicht direkt ausführbarer Instruktionen
DE2245284A1 (de) Datenverarbeitungsanlage
DE2854400A1 (de) Anordnung zum wechsel zwischen verzahnt zu verarbeitenden programmen
DE1499224C3 (de) Datenverarbeitungsanlage mit Kellerspeichereinrichtungen
DE2906685A1 (de) Instruktionsdecodierer
DE3344340C2 (de) Datenverarbeitungsanordnung zum Durchführen von Mikrobefehlen
DE2418921A1 (de) Vorrichtung und verfahren zum speichern und ausfuehren von mikroprogrammen in einem datenverarbeitungssystem
DE2723706A1 (de) Einrichtung zum adressenvergleich
DE2622140C3 (de) Einrichtung zur Steuerung manueller Operationen

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8339 Ceased/non-payment of the annual fee