DE2442988A1 - Rechenmaschine - Google Patents

Rechenmaschine

Info

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
Application number
DE2442988A
Other languages
English (en)
Other versions
DE2442988B2 (de
Inventor
Juergen Blech
Klaus Hempen
Wilfried Karrenberg
Werner Marx
Horst-Guenther Werner
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.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung 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 Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE19742442988 priority Critical patent/DE2442988B2/de
Priority to DE19752537625 priority patent/DE2537625B2/de
Priority to NL7510368A priority patent/NL7510368A/xx
Priority to IT26923/75A priority patent/IT1042303B/it
Priority to GB36453/75A priority patent/GB1525862A/en
Priority to SE7509806A priority patent/SE415409B/xx
Priority to AT683975A priority patent/AT356940B/de
Priority to CA234,842A priority patent/CA1063248A/en
Priority to BE159804A priority patent/BE833143A/xx
Priority to FR7527453A priority patent/FR2331095A1/fr
Priority to JP10815275A priority patent/JPS5718614B2/ja
Publication of DE2442988A1 publication Critical patent/DE2442988A1/de
Publication of DE2442988B2 publication Critical patent/DE2442988B2/de
Withdrawn 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • 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
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16CSHAFTS; FLEXIBLE SHAFTS; ELEMENTS OR CRANKSHAFT MECHANISMS; ROTARY BODIES OTHER THAN GEARING ELEMENTS; BEARINGS
    • F16C2300/00Application independent of particular apparatuses
    • F16C2300/10Application independent of particular apparatuses related to size
    • F16C2300/14Large 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
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)

  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 42388
    nur 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 der
    609814/0971 -20-
    '■ ~20 " 2442388
    betreffenden 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 71
    2U2988 .
    Bedingungen für das Auslösen des Ab schalt-Mkroprogramimablaufs ist.
    609814/097 1
    Le e rs e i t e
DE19742442988 1974-09-07 1974-09-07 Rechenmaschine Withdrawn DE2442988B2 (de)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57151939U (de) * 1981-03-17 1982-09-24

Cited By (1)

* Cited by examiner, † Cited by third party
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