DE2442988A1 - Rechenmaschine - Google Patents
RechenmaschineInfo
- Publication number
- DE2442988A1 DE2442988A1 DE2442988A DE2442988A DE2442988A1 DE 2442988 A1 DE2442988 A1 DE 2442988A1 DE 2442988 A DE2442988 A DE 2442988A DE 2442988 A DE2442988 A DE 2442988A DE 2442988 A1 DE2442988 A1 DE 2442988A1
- Authority
- DE
- Germany
- Prior art keywords
- microprogram
- machine according
- calculating machine
- dre
- sequence
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4812—Task transfer initiation or dispatching by interrupt, e.g. masked
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
- G06F13/26—Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/226—Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
- G06F9/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
- G06F9/268—Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F16—ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
- F16C—SHAFTS; FLEXIBLE SHAFTS; ELEMENTS OR CRANKSHAFT MECHANISMS; ROTARY BODIES OTHER THAN GEARING ELEMENTS; BEARINGS
- F16C2300/00—Application independent of particular apparatuses
- F16C2300/10—Application independent of particular apparatuses related to size
- F16C2300/14—Large applications, e.g. bearings having an inner diameter exceeding 500 mm
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Debugging And Monitoring (AREA)
- Stand-By Power Supply Arrangements (AREA)
- Selective Calling Equipment (AREA)
Description
PHILIPS PATENTVERWALTUNG GMBH, Hamburg 1, Steindamm 94
RECHENMASCHINE
Die Erfindung betrifft eine Rechenmaschine mit einer zentralen Steuereinheit, die einen bei Ausfall der Betriebsspannung
die Information haltenden Arbeitsspeicher und einen Mikroprogrammspeicher
mit von Makrobefehlen im Arbeitsspeicher aufrufbaren, durch einen Mikroprogrammzähler gesteuerten Mikroprogrammabläufen enthält, und mit an die zentrale Steuereinheit
angeschlossenen peripheren Geräten. ·
Bei solchen Rechenmaschinen ist also im Arbeitsspeicher das vom Programmierer erstellte Programm bzw. das aus einer symbolischen
Programmsprache umgewandelte Programm als Folge einzelner Maschinenbefehle enthalten. Dies sei hier als Makroprogramm
bezeichnet. Jeder oder nahezu jeder Maschinenbefehl im Makroprogramm ruft einen Mikroprogrammablauf im Mikroprogrammspeicher
auf, der den Ablauf bei der zum Teil komplizierten Ausführung des Maschinenbefehls steuert. Solche Ma-
PHD 74-171 Po/Sa 609814/097 1
schinenbefehle können beispielsweise arithmetische Operationen
betreffen, oder sie können die Ansteuerung eines Eingabe- oder Ausgabegerätes für die Übertragung einer Information bzw. eines Informationsblocks auslösen. Insbesondere
bei den Ein- und Ausgabegeräten ist die Geschwindigkeit der Informationsübertragung allgemein durch die Bauart des
Gerätes bestimmt und wesentlich geringer als die Geschwindigkeit, mit der die zentrale Steuereinheit die Informationen
aufnehmen oder abgeben könnte. Daher wird das Programm allgemein so aufgebaut, daß zwischen der Übertragung der einzelnen
Informationseinheiten von der zentralen Steuereinheit andere Funktionen ausgeführt werden, z.B. arithmetische
Operationen, aber auch ein Informationsaustausch mit anderen Ein- oder Ausgabegeräten, so daß die Informationsübertragung
dann in einem Zeitschachtelungsverfahren stattfindet. Dabei ist es schwierig, die ineinander verschachtelten Funktionsabläufe so zu behandeln, daß mit Sicherheit kein übertragenes
Informationszeichen verlorengeht oder eine Störung auftritt.
Aufgabe der Erfindung ist es, eine Rechenmaschine anzugeben,
bei der die Mikroprogrammabläufe für die einzelnen Funktionen leicht unterbrochen werden -können, ohne daß eine Unterbrechung
besondere Maßnahmen wie beispielsweise eine Datensicherungsroutine erfordert und ohne daß durch eine Unterbrechung
Daten verlorengehen können oder Störungen auftreten können. Diese Aufgabe löst die Erfindung durch die im Kennzeichen des
Anspruchs 1 angegebenen Maßnahmen. Dadurch, daß eine Unterbrechung eines Mikroprogrammablaufs ohne Ausnahme nur durch
6098 U/0971 "" " 3 "
dieses selbst gesteuert an den dafür vorgesehenen Stellen
erfolgt, können diese Stellen innerhalb des Mikroprogrammablaufs so gewählt werden, daß der Ablauf gefahrlos unterbrochen
werden kann, ohne daß dabei Daten gesichert werden müssen. Durch entsprechenden Aufbau der Mikroprogrammabläufe
bzw. entsprechende Häufigkeit der Teile, die eine Abfrage enthalten, kann erreicht werden, daß der Zeitabstand
zwischen zwei Abfragen eine maximale Zeitspanne nicht überschreitet, so daß sichergestellt ist, daß jedes Ein- oder
Ausgabegerät in einem bestimmten Zeitzyklus mindestens einmal abgefragt wird, um insbesondere Verlust von einzugebender
Information zu verhindern. Dabei kann bei der Abfrage der einzelnen Peripheriegeräte eine Prioritätssteuerung vorgesehen
werden, wobei zweckmäßig die Stromversorgung die höchste Priorität aus später noch erläuterten Gründen erhält.
Auch jeder eine Informationsübertragung steuernder Mikroprogrammablauf
enthält Teile, die Abfragen enthalten. Auf diese Weise ist ein Betrieb von mehreren Ein- oder Ausgabe-Peripherie·
geräten gleichzeitig im Zeitschachtelungsverfahren möglich. Bei mehreren gleichzeitig angesteuerten Geräten können mehrere
unterbrochene Mikroprogrammabläufe entstehen, wenn nämlich ein zweiter Ablauf, der einen ersten Ablauf unterbrochen
hat, durch einen dritten Ablauf seinerseits unterbrochen wird. Dies ist dadurch leicht möglich, weil jeder Mikroprogrammablauf
Teile mit Abfragen von Peripheriegeräten enthält, die unabhängig davon ausgelöst werden, ob der Mikroprogramm-
- 4 609814/0971
ablauf selbst etwa durch eine Unterbrechung infolge einer Abfrage begonnen wurde. Wenn ein Mikroprogrammablauf beendet
ist und bei den Abfragen wird kein Signal auf irgendeiner der Signalleitungen festgestellt, werden die vorher unterbrochenen
Mikroprogrammabläufe weitergeführt,und zwar zweckmäßig nach einer vorgegebenen Priorität, die mit der
Priorität der Peripheriegeräte übereinstimmen kann. Erst nach Abschluß aller laufenden bzw. unterbrochenen Mikropro-'
grammabläufe für Peripheriegeräte werden die nur die zentrale Steuereinheit betreffenden Mikroprogrammabläufe, beispielsweise
arithmetische Funktionen, weitergeführt.
Beim Einschalten und Abschalten der Rechenmaschine, d.h. der Spannungsversorgung, ergeben sich weitere vorteilhafte Ausgestaltungen
der Erfindung. Beim Einschalten wird der Mikropro-
wo ein Mikroprogrammablauf beginnt, grammzähler auf eine vorgegebene Anfangsadresse gesetzt,/ der
gewisse Grunddaten für andere Mikroprogrammabläufe in den Arbeitsspeicher schreibt und dann in einer Programmschleife
endet, die nur eine Abfrage der Tastatur enthält. Erst durch eine bestimmten Tastendruckikann der normale Programmablauf
in Gang gesetzt werden. Beispielsv/eise wird durch eine Taste ein Programm eingelesen, während bei Betätigung einer anderen
Taste ein im Arbeitsspeicher bereits vorhandenes Programm weitergeführt wird» Während des Mikroprogrammablaufs am Anfang
erfolgen keine Abfragen außer der Abfrage der Spannungsversorgung, die hier als Peripheriegerät aufgefaßt wird, und
zwar wird es auf einen bevorstehenden Spannungszusammenbruch abgefragt. Dies ist notwendig, da im Falle eines Betriebsspannungsfehlers
der anfängliche Mikroprogrammablauf nicht
B O 9 8 U / O 9 ? 1
einwandfrei durchgeführt werden kann. Diese Abfrage geschieht
auch während aller folgenden Mikroprogrammabläufe. Wenn ein
bevorstehender SpannungsZusammenbruch gemeldet wird, wird
ein Mikroprogrammablauf ausgelöst, der in einer Programmschleife ohne Abfrage endet, da der Mikroprogrammzahler nicht
stillgesetzt werden kann. Dadurch können beim endgültigen Spannungszusammenbruch keine falschen Funktionen erfolgen.
Beim Abschalten durch den Hauptschalter wird zweckmäßig die
Spannungsversorgung nicht direkt abgeschaltet, sondern die Aus-Stellung des Hauptschalters wird als ein Gerätezustand
ausgewertet, der gegebenenfalls zusammen mit anderen Bedingungen einen Abschalt-Mikroprogrammablauf auslöst, bei dem
eine Information zu der Stromversorgung übertragen wird, die erst die Stromversorgung abschaltet. Durch die anschließende
Meldung des Spannungszusammenbruchs wird dann wieder automatisch der Mikroprogrammablauf angesprungen,. der in einer Programmschleife
ohne Abfrage endet.
Ein Ausführungsbeispiel der Erfindung wird anhand der Zeichnung erläutert. Darin ist die zentrale Steuereinheit GPU
mit einer Mehrzahl von Peripheriegeräten über ein Kabel DD verbunden, das hier der Einfachheit halber nur als eine Leitung
dargestellt ist, jedoch tatsächlich eine Vielzahl von einzelnen Leitungen zur Übertragung von Daten und Steuersignalen
enthält. Von den Peripheriegeräten sind hier beispielsweise nur drei Geräte angedeutet, und zwar die Spannungsversorgung
SV zur Erzeugung der Betriebsspannung U-g für die zen-
609814/0 97 1
trale Steuereinheit CPU, eine Tastatur TA mit den beispielsweise
angedeuteten Tasten RUN und READ, sowie ein Magnetbandgerät MB. Diese Geräte sind parallel mit dem Kabel DD verbunden,
das noch weiter zu anderen nicht dargestellten Peripheriegeräten führt. Ferner ist jedes Gerät mit einer eigenen
Steuerleitung DRE^, DRE^, DRE, bzw. mit der zentralen
Steuereinheit CPU verbunden. Auf diesen letzteren Leitungen überträgt das entsprechende Peripheriegerät ein Signal zur
zentralen Steuereinheit, wenn das Peripheriegerät eine Informationsübertragung erfordert. Diese Leitungen sind daher
nur für eine Übertragungsrichtung vorgesehen, während von den Leitungen im Kabel DD der größere Teil, insbesondere die
Leitungen für die Informationsübertragung selbst, für die Übertragung in beiden Richtungen vorgesehen sind. Alle Leitungen,
die die Peripheriegeräte mit der zentralen Steuereinheit verbinden, enden in der zentralen Steuereinheit CPU an
Schaltern S und SA, die von der Steuereinheit selbst, und zwar insbesondere von der den Mikroprogrammspeicher enthaltenden
Mikroprogrammsteuereinheit MPS,gesteuert werden, so daß kein Signal von außen direkt ohne Steuerung durch den
Mikroprogrammablauf in die zentrale Steuereinheit eingreifen kann. Der Schalter S besteht selbstverständlich aus einer
Mehrzahl von einzelnen Schaltern, nämlich im wesentlichen einen Schalter für jede Leitung des Kabels DD^ die nicht unbedingt
alle parallel von der Mikroprogrammsteuerung MPS betätigt werden. Diese Schalter ebenso wie der Abfrageschalter
SA werden zweckmäßig als elektronische Schalter ausgebildet..
609814/0971
Die zentrale Steuereinheit CPU enthält im wesentlichen die bereits erwähnte Mikroprogrammsteuereinheit MPS, die einen
vom Mikroprogrammzähler MPZ gesteuerten Mikroprogrammspeicher enthält, sowie einen Arbeitsspeicher MEM, der hier als Magnetkernspeicher
ausgebildet sei. Ferner wird noch mindestens eine arithmetische Einheit benötigt, die jedoch für die zu
beschreibende Funktion nicht notwendig und daher nicht dargestellt ist, ebenso wie weitere üblicherweise verwendete
Register.
Der Arbeitsspeicher MEM enthält das mit der Rechenmaschine
durchzuführende Programm, das aus einer Folge von Maschinenbefehlen besteht, die entweder direkt von außen, beispielsweise
von dem Magnetbandgerät MB über das Kabel DD und den Schalter S,eingegeben wurde oder durch Umwandlung eines
symboIisehen Programms gewonnen wurde. Jeder Maschinenbefehl
löst nun allgemein einen aus vielen einzelnen Schritten bestehenden Funktionsablauf aus, der in dem Mikroprogrammspeicher
der Mikroprogrammsteuerung MPS gespeichert ist. Beispielsweise muß bei einem Eingabe- oder Ausgabe-Maschinenbefehl
geprüft werden, ob das betreffende Peripheriegerät betriebsbereit ist, ob Fehlermeldungen vorliegen usw. Da
bei vielen Peripheriegeräten die Geschwindigkeit der Informationsübertragung geringer ist, als sie von der zentralen
Steuereinheit CPU erforderlich wäre, werden teilweise zwei oder noch mehr Peripheriegeräte gleichzeitig angesprochen,
so daß die Informationsübertragung zwischenjien einzelnen Geräten und der zentralen Steuereinheit in einem Zeitschachte-
609814/09 7 1 -8-
lungsverfahren stattfindet.
Jeder Mikroprogrammablauf besitzt nun Teile, d.h. einzelne
Mikroprogrammschritte, die eine Abfrage der Signale auf den Signalleitungen DRE^, DREp, DRE^... von den Peripheriegeräten
mit dem Abfrageschalter SA durchführen. Wenn beispielsweise
durch einen Maschinenbefehl, der einen Informationsaustausch mit einem bestimmten Peripheriegerät fordert, ein-Mikroprogrammablauf
aufgerufen wird, der zunächst eine Information über den Zustand des Gerätes über das Kabel DD
und den Schalter S in die Mikroprogrammsteuerung MPS überträgt und dort auswertet, kann während der Auswertungszeit
ein Signal von einem anderen Peripheriegerät auf der entsprechenden Signalleitung DRE eintreffen, weil dieses andere
Gerät bereits vorher zu einer Übertragung einer Vielzahl von Informationszeichen gestartet wurde, wie es beispielsweise
bei einem Lochkartenleser der Fall ist. Da solche Geräte häufig keinen oder nur einen kleinen Pufferspeicher besitzen,
muß das angebotene Informationszeichen von der zentralen Steuereinheit CPU verarbeitet werden, d.h. allgemein
in den Arbeitsspeicher MEM eingeschrieben sein, bevor der Lochkartenleser die nächste Lochspalte abliest und damit die
Information der vorhergehenden Spalte verschwindet. Daher besitzen alle Mikroprogrammablaufe einen Teil oder Abschnitt,
der eine Abfrage der von dem Peripheriegeräten kommenden Signalleitungen DRE1, DRE2, DRE, usw. auslöst. Bei kurzen
Mikroprogrammabläufen kann dieser Teil zweckmäßig am Schluß des Ablaufs angeordnet sein, bei längeren Abläufen 'kann es
609814/0971
■' '-. _ 9 - 2U2888 ^
jedoch notwendig sein, mehrere Teile mit Abfragen so vorzusehen, daß der maximale Zeitabstand zwischen zwei Abfragen
nicht größer istals die Zeit, in der beispielsweise ein
angebotenes Zeichen verarbeitet oder geliefert sein muß.
Wenn nun bei der Abfrage während eines längeren Mikroprogrammablaufs
ein Signal von einem Peripheriegerät festgestellt wird, wird auf jeden Fall ein anderer Mikroprogrammablauf,
der abhängig von der das Signal führenden Leitung ist»
aufgerufen und der erste Mikroprogrammablauf unterbrochen.
Es sei an dieser Stelle erwähnt, daß die Abfrage' zweckmäßig nach einer vorgegebenen Priorität erfolgt, d.h. Ein- oder
Ausgabegeräte ohne bzw. mit nur kleinem Pufferspeicher erhalten eine größere Priorität als Geräte mit großem Pufferspeicher, die allgemein auch einen ganzen Informationsblock
übertragen. Wenn nun dieser zweite Mikroprogrammablauf, der
den ersteren unterbrochen hat, ebenfalls länger ist und innerhalb des Ablaufs Abfragen enthält, kann auch dieser zweite Mikroprogrammablauf aus den gleichen Gründen wie der
erstere unterbrochen werden. Auf diese Weise können schließlich mehrere unterbrochene Mikroprogrammabläufe vorliegen,
bis schließlich ein Ablauf wirklich bis zum Ende kommt, da bei einer Abfrage keine weiteren Signale festgestellt werden.
Nach dessen Beendigung wird nun automatisch ein unterbrochener Mikroprogrammablauf weitergeführt. Wenn mehrere unterbrochene Mikroprogrammabläufe vorliegen, können diese nach einer
bestimmten Priorität weiterbehandelt werden, wobei diese Priori -
- 10 6098 U/0 971
tat zweckmäßig mit der Priorität der Peripheriegeräte übereinstimmt.
Auf diese Weise werden dann die unterbrochenen Mikroprogrammabläufe nacheinander zu Ende geführt, solange
bei einer dabei erfolgenden Abfrage kein Signal auf einer der 'Signalleitungen DRE1, DRE2, DRE, usw. festgestellt wird. Bei
der Weiterführung von unterbrochenen Mikroprogrammabläufen werden nämlich ebenso wie bei ohne Unterbrechung ablaufenden
Mikroprogrammabläufen die Programmteile mit Abfragen auftreten.
Erst wenn alle Mikroprogrammabläufe, die Peripheriegeräte betreffen,
zu Ende gebracht worden sind, werden gegebenenfalls weitere unterbrochene Mikroprogrammabläufe, beispielsweise
arithmetische Funktionen, wie Multiplikation, weitergeführt. Erst wenn kein unterbrochener Mikroprogrammablauf vorliegt,
wird der nächste Maschinenbefehl aus dem Arbeitsspeicher MEM geholt, d.h. das Maschinenprogramm läuft dann erst weiter.
Beim ersten Einschalten der Anlage läuft zunächst noch kein Programm, damit auch kein Mikroprogrammablauf, so daß zunächst
keine Abfrage auftreten könnte. Da ein Eingriff von außen in die zentrale Recheneinheit CPU aber nur durch eine
Abfrage möglich ist, wäre es dann nicht möglich, die Rechenmaschine überhaupt in Betrieb zu setzen. Daher wird mit dem
ersten Einschalten der Spannungsversorgung, die anschließend noch näher erläutert wird, der Mikroprogrammzähler MPZ auf
eine vorgegebene Anfangsadreese gesetzt. Dieser Mikroprogramm-
- 11 -
6098U/0971
zähler erhält ständig mit einer festen Frequenz Zähltakte,
die nicht unterbrochen werden können. Dadurch wird also automatisch
der bei der Anfangsadresse beginnende Mikroprogrammablauf
ausgelöst, der bestimmte, fest im Mikroprogramm-speicher MPS enthaltene Daten für bestimmte,die Peripheriegeräte
betreffenden Mikroprogrammschritte in Speicherstellen des Arbeitsspeichers MEM mit vorgegebenen Adressen einschreibt.
Diese Daten werden beispielsweise als Parameter für die Ausführung von Mikroprogrammabläufen von Peripheriegeräte benötigt und sie werden deswegen in den Arbeitsspeicher eingeschrieben,
um zu erreichen, daß auch bei einem neu eingesetzten Arbeitsspeicher^beispielsweise nach einer Reparatur,
wobei der neue Arbeitsspeicher einen unbekannten und möglicherweise willkürlichen Inhalt haben kann, die'ganze Anlage sofort ohne besondere Maßnahmen wieder betriebsfähig ist. Davor
oder danach kann noch ein Mikroprogrammablauf liegen, der bestimmte Teile der Anlage automatisch prüft. Am Ende dieses
bei der Anfangsadresse beginnenden, automatisch durchlaufenden Mikroprogrammablaufs ist dann schließlich eine zyklisch wiederholte
Abfrage von den Signalleitungen der Peripheriegeräte vorgesehen. Damit ist dann ein Eingriff in die Anlage,
beispielsweise ein Startbefehl, möglich.
Um eine eindeutige erste Staitbedingung zu gewährleisten, wird
zweckmäßig am Ende des ersten, automatisch durchlaufenen Mikroprogrammablaufs nur eine Abfrage der Tastatur vorgesehen.
Zumindest bei einer neuen Rechenmaschine bzw. einem neuen Arbeitsspeicher MEM muß zunächst ein Programm eingegeben wer-
6098U/Ü971 ~ - 12 -
den, das beispielsweise auf dem in dem Magnetbandgerät MB enthaltenen Band gespeichert ist. Daher wird zunächst die
Taste READ gedrückt, die in der Tastaturentschlüsselung TE in der Tastatur TA ein Signal auf der Leitung DFlE2 erzeugt.
Wenn bei der Abfrage dieses Signals fesbgestellt wird, wird
ein Mikroprogrammablauf aufgerufen, der den Zustand der Tastatur TA, d.h. in diesem Falle die Tatsache, daß die
Taste READ gedrückt ist, über das Kabel DD und den Schalter S zur Mikroprogrammsteuerung MPS übaträgt. Dort wird diese
Information ausgewertet, d.h. es wird ein weiterer Mikroprogrammablauf aufgerufen, der nun die Eingabe von dem Magnetbandgerät
MB veranlaßt. Während des Einlesens des Programms von dem Magnetbandgerät MB in den Arbeitsspeicher MEM
braucht keine Abfrage stattzufinden, mit einer noch zu erläuternden
Ausnahme, da noch kein Peripheriegerät angesprochen worden sein kann, sofern dieses Magnetbandgerät MB wirklich
nur zum Einlesen von Programmen dient.
Erst am Ende des Einlesens des Programms erfolgt eine Abfrage, und zwar wiederum nur der Tastatur TA bzw. genauer
ausgedrückt der Signalleitung DRE2. Wenn nun die Taste RUN
gedrückt wird, erfolgt zunächst wieder der gleiche Ablauf, d.h. der Zustand der Tastatur wird in die Mikroprogrammsteuerung
MPS übertragen und entschlüsselt, jedoch bewirkt die Entschlüsselung dieses Zustandes nun das Auslesen einer bestimmten
Speicherstelle im Arbeitsspeicher MEM, und der Inhalt dieser Speicherstelle wird als Adresse für die Speicherzelle
ausgewertet, die den ersten auszuführenden Maschinen-
609814/0971 ~ " 13 -
befehi enthält. Damit beginnt nun der normale Programmablauf.
Die Spannungsversorgung für die zentrale Steuereinheit CPU ist als Peripheriegerät SV dargestellt. Die Leitung U„ ist
an einer üblichen Netzspannung führenden Steckdose angeschlossen. Aus der Netzspannung werden bei geschlossenem
Netzschalter SN in der Gleichrichtereinheit GL im allgemeinen mehrere Gleichspannungen, zum Teil geregelt, erzeugt,." die
über die Leitung Ug, die aus mehreren Einzelleitungen besteht
und hier nur vereinfacht als eine Leitung gezeichnet ist, der zentralen Steuereinheit CPU zugeführt. Ferner werden
die erzeugten Gleichspannungen einer Spannungsüberwachung Ü zugeführt, die ein Signal erzeugt, wenn mindestens'eine der
Gleichspannungen unter einen vorgegebenen Wert absinkt. Die vorgegebenen Werte für die einzelnen Gleichspannungen sind
so gewählt, daß sie nur bei einem Netzausfall oder einem größeren Fehler in der Gleichrichtereinheit unterschritten werden.
Dieses Signal erzeugt zunächst in der Anforderungssteuerung AS ein Signal auf der Leitung DRE., ? die von der zentralen
Steuereinheit CPU als einzige auch bei den Mikroprogrammabläufen unmittelbar nach dem Einschalten abgefragt wird, denn
wenn auch noch kein anderes Peripheriegerät angesprochen sein kann, kann doch jederzeit ein SpannungsZusammenbruch erfolgen, und in diesem Falle ist ein ordnungsgemäßes Arbeiten der
Rechenmaschine nach einer gewissen Zeitspanne nicht mehr gewährleistet. Wenn daher die zentrale Steuereinheit bei einer
Abfrage der Spannungsversorgung SV nach Übertragen der Zustandsinformation
erkennt, daß ein SpannungsZusammenbruch be-
- 14 609814/0971
vorsteht, wird ein spezieller Ende-Mikroprogrammablauf aufgerufen,
der die Makrobefehle oder Maschinenbefehle im Arbeitsspeicher MEM, die Peripheriegeräte betreffen und noch nicht
abgeschlossen sind, markiert und in einer Programmschleife endet, die keine Abfrage der Signalleitungen mehr enthält.
Die Mikroprogrammschleife wird dann solange zyklisch wiederholt durchlaufen, bis die Spannung auf der Leitung Ug so weit
abgesunken ist, daß der Taktgenerator für den Mikroprogrammzähler MPZ aufhört zu arbeiten. Da somit während der Zeit bis
zum endgültigen Spannungszusammenbruch keine Funktionen mehr ausgeführt werden, können also auch durch fehlerhaftes Arbeiten
einzelner Teile bei zu niedriger Spannung keine falschen Funktionen ablaufen. Die eine Abfrage enthaltenden Teile
der Mikroprogrammabläufe bewirken also teilweise nicht eine Abfrage aller Peripheriegeräte, sondern bei bestimmten
Abläufen werden nur einige, nämlich die Spannungsversorgung und die Tastatur abgefragt, wobei die Spannungsversorgung in
jedem Falle die höchste Priorität haben muß.
Auch beim Ausschalten der Rechenmaschine gelten bestimmte Besonderheiten,
da der Mikroprogrammzähler MPZ nicht angehalten werden kann. Als Hauptschalter für die Rechenmaschine dient
ein Schlüsselschalter SS, der über die Befehlsentschlüsselung BE den Netzschalter SN direkt einschaltet. Die unmittelbar
danach ablaufenden Vorgänge sind vorstehend beschrieben. Beim Ausschalten des Schlüsselschalters SS wirkt die Aus-Stellung
aber nur als besonderer Zustand des Peripheriegerätes SV, der über die Anforderungssteuerung AS ein Signal auf der Signal-
609814/0971 """ ~15 "
leitung DRE^ erzeugt. Wenn dieses Signal bei einer Abfrage
von der zentralen Steuereinheit CPU festgestellt wird, wird der in der Befehlsentschlüsselung BE kodierte Zustand/in die
Mikroprogrammsteuerung MPS übertragen und entschlüsselt. Abhängig von der Programmierung kann nun ein Abschalt-Mikroprogrammablauf
ausgelöst werden, der eine Information an die Spannungsversorgung SV überträgt, die über die Befehlsentschlüsselung
BE den Netzschalter SN ausschaltet. Es kann aber auch die Aus-Stellung des Schlüsselschalters SS von der
Mikroprogrammsteuerung MPS nur. als eine Bediigjng für das
Aufrufen des Abschalt-Mikroprogrammablaufs verwendet werden,
und erst wenn auf alle anderen Bedingungen erfüllt sind, wird der Abschalt-Mikroprogrammablauf endgültig ausgelöst. Dadurch
ist ein Abschalten ohne Anwesenheit eines Bedieners möglich, beispielsweise wenn die letzte Lochkarte aus einem Vorrat
gelesen ist oder wenn eine bestimmte Datenfernübertragung stattgefunden hat. Nach dem Ausschalten des Netzschalters SN
ist der Programmablauf aber noch nicht automatisch beendet, sondern es können gegebenenfalls noch einige kurze Programmschritte
abgewickelt werden, bis schließlich die Spannungsüberwachung Ü einen bevorstehenden SpannungsZusammenbruch
meldet, und damit wird dann erst der Ende-Mikroprogrammablauf ausgelöst. Der Befehl, der über die Befehlsentschlüsselung
BE in der Spannungsversorgung SV den Netzschalter' SN ausschaltet, kann aber auch je nach Programmierung ohne Betätigung des Schlüsselschalters SS übertragen werden, so daß die
Rechenmaschine ausgeschaltet ist, obwohl der Schlüsselschalter noch in der Ein-Stellung steht.
/ des Schlüsselschalters SS
/ des Schlüsselschalters SS
6098U/0971 ' - 16 -
Wenn die Rechenmaschine nach dem Ansprechen der Spannungsüberwachung Ü, gleich aus welchem Grunde, abgeschaltet worden
ist, und nach dem Einschalten soll das zuletzt bearbeitete Programm im Arbeitsspeicher MEM fortgeführt werden, so
wird die Taste RUN in der Tastatur TA gedrückt. Dies bewirkt, wie oben ausgeführt wurde, daß eine bestimmte Speicherzelle
des Arbeitsspeichers MEM ausgelesen wird, und zwar stellt diese Speicherzelle im Normalbetrieb den Programmzähler für
das Maschinenprogramm dar. Daher kann das Programm an der unterbrochenen Stelle weitergeführt werden, da der Arbeitsspeicher
MEM ein Magnetkernspeicher ist, der beim Abschalten der Spannungsversorgung seine Information nicht verliert. Bei dem
Ende-Mikroprogrammablauf nach Meldung eines bevorstehenden Spannungszusammenbruchs kann es durchaus vorkommen, daß Maschinenbefehle
im Arbeitsspeicher MEM für Peripheriegeräte bereits begonnen wurden auszuführen, aber nicht zu Ende gelaufen
sind, da die zugehörigen Mikroprogrammabläufe unterbrochen wurden. Durch das Abschalten der Betriebsspannung gehen
nun die Zustände der einzelnen ELkroprogrammabläufe verloren, und aus diesem Grunde werden alle Maschinenbefehle
im Arbeitsspeicher MEM, deren zugehörigen Mikroprogrammabläufe nicht bis zum Abschluß gekommen sind, markiert, und nach
dem Wiedereinschalten der Rechenmaschine werden die zu diesen markierten Maschinenbefehlen gehörigen Mikroprogrammabläufe
noch einmal von vorn begonnen. Dadurch wird zwar ein Teil von einigen Mikroprogrammabläufen, nämlich die vorher bereits
begonnen waren, doppelt ausgeführt, jedoch ist dadurch gewährleistet, daß kein Programmschritt und damit auch keine
609814/0971 " "17"
Daten verlorengehen können.
Patentansprüche:
- 18 -609814/0971
Claims (1)
- Patentansprüche: PVE 86-143 Po/SaΛ ,β Rechenmaschine mit einer zentralen Steuereinheit, die einen bei Ausfall der Betriebsspannung die Information haltenden Arbeitsspeicher und einen Mikroprogrammspeicher mit von Makrobefehlen im Arbeitsspeicher aufrufbaren, durch einen Mikroprogrammzähler gesteuerten Mikroprogrammabläufen enthält, und mit an die zentrale Steuereinheit angeschlossenen peripheren Geräten, dadurch gekennzeichnet, daß alle die peripheren Geräte (SV, TA, MB) mit der zentralen Steuereinheit (CPU) verbindenden Signalleitungen (DD, DRE1, DRE2...) am Eingang der zentralen Steuereinheit über von der zentralen Steuereinheit gesteuerte Schalter (S) führen und daß jeder Mikroprogrammablauf mindestens einen Teil enthält, der die Signale auf bestimmten Signalleitungen abfragt und abhängig von dem Ergebnis der Abfrage andere Mikroprogrammabläufe auslöst, so daß kein Mikroprogrammablauf durch die Signale auf den Signalleitungen unmittelbar beeinflußbar ist.2.) Rechenmaschine nach Anspruch 1, dadurch gekennzeichnet, daß die eine Abfrage enthaltenden Teile der Mikroprogrammabläufe so angeordnet sind, daß die zwischen den einzelnen Abfragen liegenden Zeitabstände eine maximale Zeitspanne nicht überschreiten.5.) Rechenmaschine nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß für jedes Peripheriegerät (SV, TA, MB)809814/0971 *' - 19 -24 42388nur eine Signalleitung (DRE1, DREp...) abgefragt wird.4.) Rechenmaschine nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß zumindest einem Teil der Peripheriegeräte (SV, TA, MB) bzw. der entsprechenden Signalleitungen (DRE^, DRE2...) bei der Abfrage eine Priorität zugeordnet ist, wobei das die Stromversorgung enthaltende Peripheriegerät (SV) die höchste Priorität erhält.5.) Rechenmaschine nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß auch jeder einen Informationstransport zwischen einem der Peripheriegeräte (SV, TA, MB) und der zentralen Steuereinheit (CPU) steuernde Mikroprogrammablauf einen Teil enthält, der die Signalleitungen (DRE1, DRE2...) der anderen Peripheriegeräte abfragt.6.) Rechenmaschine nach Anspruch 5, dadurch gekennzeichnet, daß die zentrale Steuereinheit (CPU) bei einem bei der Abfrage festgestellten Signal auf einer der abgefragten Signalleitungen (DRE^, DRE2...) den augenblicklichen Mikroprogrammablauf unterbricht und einen durch die betreffende Signalleitung bestimmten Programmsprung ausführt.7.) Rechenmaschine nach Anspruch 6, dadurch gekennzeichnet, daß der durch den Programmsprung begonnene Mikroprogrammablauf als einen der ersten Programmschritte einen Abfragebefehl für die Übertragung des Zustandes des der609814/0971 -20-'■ ~20 " 2442388betreffenden Signalleitung zugeordneten Peripheriegerätes (SV, TA, MB) enthält.8.) Rechenmaschine nach Anspruch 7, dadurch gekennzeichnet, daß abhängig von dem an die zentrale Steuereinheit (CPU) übertragenden Zustand gegebenenfalls ein weiterer Programmsprung erfolgt.9.) Rechenmaschine nach Anspruch 6 oder einem der folgenden, dadurch gekennzeichnet, daß nach Abschluß eines gegebenenfalls unterbrochenen Mikroprogrammablaufs für ein bestimmtes Peripheriegerät (z.B. TA) bei fehlenden Signalen auf den Signalleitungen (DRE1, DRE2...) ein unterbrochener Mikroprogrammablauf für ein Peripheriegerät (z.B. MB) fortgesetzt wird.10.) Rechenmaschine nach Anspruch 9» dadurch gekennzeichnet, daß bei Vorliegen mehrerer unterbrochener Mikroprogrammabläufe für Peripheriegeräte (SV, TA, MB) diese in der Reihenfolge einer vorgegebenen Priorität weiterbehandelt werden.11.) Rechenmaschine nach Anspruch 10, dadurch gekennzeichnet, daß die Priorität der Weiterbehandlung mit der Priorität der Peripheriegeräte (SV, TA, MB) übereinstimmt.12.) Rechenmaschine nach Anspruch 9 oder einem der folgenden, dadurch gekennzeichnet, daß erst nach Abschluß aller begonnenen, gegebenenfalls unterbrochenen Mikroprogrammab-609814/0971 " - 21 -laufen für Peripheriegeräte (SV, TA, MB) weitere unter- . brochene Mikroprogrammabläufe weiterlaufen.13.) Rechenmaschine nach Anspruch 1 oder einem der folgenden, dadurch gekennzeichnet, daß das Einschalten der Betriebsspannung (Ug) für die zentrale Steuereinheit (CPU) den ständig Zählimpulse erhaltenden Mikroprogrammzähler auf eine vorgegebene Anfangsadresse setzt, und daß zumindest ein Teil des dort beginnenden Mikroprogrammablaufes fest im Mikroprogrammspeicher (MPS) enthaltene Daten für bestimmte, die Peripheriegeräte (SV, TA, MB) betreffenden Mikroprogrammschritte in Speicherstellen des Arbeitsspeichers (MEM) mit vorgegebenen Adressen einschreibt und erst am Ende dieses Mikroprogrammablaufs eine zyklisch wiederholte Abfrage der Signalleitungen (DRE1, DREg...) auslöst.14.) Rechenmaschine nach Anspruch 13, dadurch gekennzeichnet, daß die am Ende des ersten Mikroprogrammablaufs ausgelöste Abfrage nur die Signalleitung (DRE^) des die Tastatur enthaltenden Peripheriegerätes (TA) abfragt.15.) Rechenmaschine nach Anspruch 14, dadurch gekennzeichnet, daß bei Betätigung einer vorbestimmten Taste (READ) ein Programmsprung auf den Mikroprogrammablauf für die Eingabe von Informationen von einem vorbestimmten Peripheriegerät (MB) erfolgt.16.) Rechenmaschine nach Anspruch 14, dadurch gekennzeichnet, daß bei Betätigung einer anderen vorbestimmten Taste (RUN)609814/0971 ~ - 22 -ein Programmsprung auf einen Mikroprogrammablauf erfolgt, der den Inhalt einer vorgegebenen Speicherstelle im Arbeitsspeicher (MEM) ausliest und als Anfangsadresse für das im Arbeitsspeicher enthaltene Makroprogramm interpretiert .17.) Rechenmaschine nach Anspruch 8 oder einem der folgenden, dadurch gekennzeichnet, daß ein von dem die Spannungsversorgung enthaltenden Peripheriegerät (SV) übertragenen Zustandsmeldung, die einen bevorstehenden Spannungszusammenbruch meldet,' einen Ende-Mikroprogrammablauf auslöst, der die Makrobefehle im Arbeitsspeicher (MEM), die Peripheriegeräte (SV, TA, MB) betreffen und nicht abgeschlossen wurden, markiert und in einer Programmschleife endet, die keine Abfrage von Signalleitungen (DRE1, DRE2...) enthält.18.) Rechenmaschine nach Anspruch 17, dadurch gekennzeichnet, daß eine bei einem Abschalt-Mikroprogrammablauf ausgelöste Übertragung eines vorbestimmten Befehls zu dem die Spannungsversorgung enthaltenen Peripheriegerätes (SV) den Netzschalter (SN) ausschaltet und daß die in der an-■ schließenden Übertragung des Zustandes des Peripheriegerätes (SV) enthaltene Meldung des bevorstehenden Spannungszusammenbruchs den Ende-Mikroprogrammablauf auslöst.19.) Rechenmaschine nach Anspruch 18, dadurch gekennzeichnet, daß die Aus-Stellung eines Hauptschalters (SH) für die Spannungsversorgung nur eine von gegebenenfalls mehreren- 23 609814/09 712U2988 .Bedingungen für das Auslösen des Ab schalt-Mkroprogramimablaufs ist.609814/097 1Le e rs e i t e
Priority Applications (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19742442988 DE2442988B2 (de) | 1974-09-07 | 1974-09-07 | Rechenmaschine |
DE19752537625 DE2537625B2 (de) | 1974-09-07 | 1975-08-23 | Rechenmaschine mit eingabegeraeten |
NL7510368A NL7510368A (nl) | 1974-09-07 | 1975-09-03 | Rekenmachine met onderbreking van het mikroprogramma. |
IT26923/75A IT1042303B (it) | 1974-09-07 | 1975-09-04 | Sistena calcolatore in cui una funzione puo essere interrotta da un microprogramma |
GB36453/75A GB1525862A (en) | 1974-09-07 | 1975-09-04 | Microprogramme-interrupted computer |
SE7509806A SE415409B (sv) | 1974-09-07 | 1975-09-04 | Datoranordning |
AT683975A AT356940B (de) | 1974-09-07 | 1975-09-04 | Rechenmaschinenkonfiguration |
CA234,842A CA1063248A (en) | 1974-09-07 | 1975-09-05 | Microprogram-interrupted computer |
BE159804A BE833143A (fr) | 1974-09-07 | 1975-09-05 | Machine a calculer avec interruption du microprogramme |
FR7527453A FR2331095A1 (fr) | 1974-09-07 | 1975-09-08 | Machine a calculer avec interruption de microprogramme |
JP10815275A JPS5718614B2 (de) | 1974-09-07 | 1975-09-08 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19742442988 DE2442988B2 (de) | 1974-09-07 | 1974-09-07 | Rechenmaschine |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2442988A1 true DE2442988A1 (de) | 1976-04-01 |
DE2442988B2 DE2442988B2 (de) | 1976-12-16 |
Family
ID=5925187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19742442988 Withdrawn DE2442988B2 (de) | 1974-09-07 | 1974-09-07 | Rechenmaschine |
Country Status (10)
Country | Link |
---|---|
JP (1) | JPS5718614B2 (de) |
AT (1) | AT356940B (de) |
BE (1) | BE833143A (de) |
CA (1) | CA1063248A (de) |
DE (1) | DE2442988B2 (de) |
FR (1) | FR2331095A1 (de) |
GB (1) | GB1525862A (de) |
IT (1) | IT1042303B (de) |
NL (1) | NL7510368A (de) |
SE (1) | SE415409B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2423820A1 (fr) * | 1978-03-20 | 1979-11-16 | Bendix Corp | Processeur autonome entree/sortie pour systeme numerique |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57151939U (de) * | 1981-03-17 | 1982-09-24 |
-
1974
- 1974-09-07 DE DE19742442988 patent/DE2442988B2/de not_active Withdrawn
-
1975
- 1975-09-03 NL NL7510368A patent/NL7510368A/xx not_active Application Discontinuation
- 1975-09-04 AT AT683975A patent/AT356940B/de not_active IP Right Cessation
- 1975-09-04 GB GB36453/75A patent/GB1525862A/en not_active Expired
- 1975-09-04 IT IT26923/75A patent/IT1042303B/it active
- 1975-09-04 SE SE7509806A patent/SE415409B/xx not_active IP Right Cessation
- 1975-09-05 CA CA234,842A patent/CA1063248A/en not_active Expired
- 1975-09-05 BE BE159804A patent/BE833143A/xx not_active IP Right Cessation
- 1975-09-08 FR FR7527453A patent/FR2331095A1/fr active Granted
- 1975-09-08 JP JP10815275A patent/JPS5718614B2/ja not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2423820A1 (fr) * | 1978-03-20 | 1979-11-16 | Bendix Corp | Processeur autonome entree/sortie pour systeme numerique |
Also Published As
Publication number | Publication date |
---|---|
JPS5718614B2 (de) | 1982-04-17 |
CA1063248A (en) | 1979-09-25 |
SE7509806L (sv) | 1976-03-08 |
AT356940B (de) | 1980-06-10 |
JPS5152750A (de) | 1976-05-10 |
DE2442988B2 (de) | 1976-12-16 |
BE833143A (fr) | 1976-03-05 |
NL7510368A (nl) | 1976-03-09 |
GB1525862A (en) | 1978-09-20 |
IT1042303B (it) | 1980-01-30 |
FR2331095B1 (de) | 1980-04-30 |
ATA683975A (de) | 1979-10-15 |
SE415409B (sv) | 1980-09-29 |
FR2331095A1 (fr) | 1977-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3248680C2 (de) | Energiesparschaltung für einen Microcomputer | |
DE3335145C2 (de) | ||
DE2744531A1 (de) | Elektronische datenverarbeitungsanlage | |
CH654943A5 (de) | Pruefeinrichtung fuer mikroprogramme. | |
DE3734088C2 (de) | Betriebsunterbrechungsschaltung | |
DE3110378A1 (de) | Datenverarbeitungseinrichtung | |
DE2648229A1 (de) | Einschaltkreis als urlader fuer digitalrechner | |
DE1275800B (de) | Steuerwerk fuer datenverarbeitende Maschinen | |
DE2747633A1 (de) | Dv-system mit einer unterbrechungseinrichtung | |
DE2935101C2 (de) | ||
DE2364323C2 (de) | Verfahren zur Behandlung von Unterbrechungsbedingungen in einer Datenverarbeitungsanlage | |
DE3811658C2 (de) | ||
EP0104490A2 (de) | Verfahren und Vorrichtung zur Synchronisation von Datenverarbeitungsanlagen | |
DE69127496T2 (de) | Steuerungsgerät mit sequenzieller Funktionsplandarstellung zur Steuerung einer Maschine in rückwärtigem Betrieb | |
DE2714681A1 (de) | Mikroprogrammierter lsi-mikroprozessor | |
DE2442988A1 (de) | Rechenmaschine | |
EP1119801A1 (de) | Verfahren zum betrieb eines automatisierungssystems | |
EP0525214B1 (de) | Verfahren zum Betreiben eines Automatisierungsgeräts | |
EP1283471B1 (de) | Programmgesteuerte Einheit | |
DE2642251A1 (de) | Steuerungseinrichtung und betriebsverfahren fuer eine rechnergefuehrte steuerung bei einer numerisch gesteuerten maschine, beispielsweise einer werkzeugmaschine | |
DE3751374T2 (de) | Verfahren und Mechanismus zum unabhängigen Sicherstellungsmodustransfer für digitale Steuerprozessoren. | |
DE2519168A1 (de) | Umlaufendes schieberegister | |
EP0121038B1 (de) | Speicherprogrammierbare Steuerung | |
EP0010193A1 (de) | Einrichtung zur Steuerung der Zykluszeit für einen Mikroprozessor mit Steuerspeichern unterschiedlicher Verarbeitungsgeschwindigkeit | |
WO2003025748A2 (de) | Verfahren zum betreiben einer schaltungsanordnung, die einen mikrocontroller und ein eeprom enthält |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8230 | Patent withdrawn |