DE2242009A1 - System zur aenderung von mikrobefehlen sowie verfahren und system zur pruefung der sicherheit von verzweigungseigenschaften eines rechnersystems - Google Patents

System zur aenderung von mikrobefehlen sowie verfahren und system zur pruefung der sicherheit von verzweigungseigenschaften eines rechnersystems

Info

Publication number
DE2242009A1
DE2242009A1 DE2242009A DE2242009A DE2242009A1 DE 2242009 A1 DE2242009 A1 DE 2242009A1 DE 2242009 A DE2242009 A DE 2242009A DE 2242009 A DE2242009 A DE 2242009A DE 2242009 A1 DE2242009 A1 DE 2242009A1
Authority
DE
Germany
Prior art keywords
microinstruction
memory
branch
register
read
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.)
Granted
Application number
DE2242009A
Other languages
English (en)
Other versions
DE2242009C2 (de
Inventor
Donald J Greenwald
Thomas O Holtey
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.)
Bull HN Information Systems Inc
Original Assignee
Honeywell Information Systems Italia SpA
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 Honeywell Information Systems Italia SpA filed Critical Honeywell Information Systems Italia SpA
Publication of DE2242009A1 publication Critical patent/DE2242009A1/de
Application granted granted Critical
Publication of DE2242009C2 publication Critical patent/DE2242009C2/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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/277Tester hardware, i.e. output processing circuits with comparison between actual response and known fault-free response
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Executing Machine-Instructions (AREA)
  • Debugging And Monitoring (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Detection And Correction Of Errors (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

Dipl.-Ing. Heinz Bardehle
Patentanwalt
8 München 22, Herrnstr. 15
Mein Zeichen: P 1455
Anmelder: Honeywell Information Systems Inc. 200 Smith Street
Waltham/Mass., V. St. A0
System zur Änderung von Mikrobefehlen sowie Verfahren und System zur Prüfung der Sicherheit von Verzweigungseigenschaften eines Rechnersystems
Die Erfindung bezieht sich generell auf sine Datenirersrbaitungsvorrichtung und insbesondere ausf ©ia@ verbesserte Fehlerprüfvorrichtung zur Ermittelung von FeKLtra In ©inem Recimersystem.
Als ROM-Speicher bezeichnete Lesespeiciier werden la verstärktem Maße als Steuerelemente in einer zentralen Verarbeitüngsein·* richtung eines Rechners verwendet, und überdies körnen sie zur Ausführung von anderen Funktionen herangesogen werden, wie z.B, für eine Adressenerseugung für sämtliche Rechnerspeicher (Hauptep@icher und Steuarspeicher).» BIe betreffenden Lesespeicher bzw. Festwertspeicher siad ia"d©n frfßien fünfziger Jahren entwickelt worden^ als M0¥, Wilkee (siehe hlersu iron M.V. Wllkes: "The Best Way to Design an Automatic Calculating Machine", Manchester University Computer Inaugursü'Conference,
309809/1098
Juli 1951} Seiten 16 bis 18) einen Rechner mit einem variablen Befehlssatz vorschlug. Die frühen Rechner waren mit einem festen Befehlssatz ausgerüstet, deren jeder Befehl aus einer Folge von Elementaroperationen oder MikroOperationen bestand. Diese frühen Rechner waren dabei so ausgelegt, daß sie die verschiedenen Mikrooperationen derart ausführten, daß für jeden der Programmvorrichtung zur Verfügung stehenden Befehl die Mikrooperationsfolge in der Rechnerhardware fest vorgegeben war· Durch Bereitstellen einer Maschine mit einem variablen Befehlssatz war die Mikroprogrammiereinrichtung imstande, das Befehlsrepertoire des Rechners auf Grund der Forderungen seines Problems zu ändern, und zwar durch Zusammenstellen der Mikrooperationen zu irgendeinem Befehl, den die Maschine auszuführen Imstande war. Diese Befehle konnten durch die Mikroprogrammiereinrichtung geändert werden, im allgemeinen jedoch nicht durch die Maschine.
Ein Rechner mit einem variablen Befehlsrepertoire erforderte für die Speicherung der Mikrooperationsfolgen einen Speicher, der durch die Mikroprogrammiereinrichtung geändert werden konnte, nicht aber durch die Maschine. Demgemäß wurde der Lesebzw. Festwertspeicher ROM bzw. ein zerstörungsfrei auslesbarer Speicher entwickelt. Schließlich wurden die verschiedenen Steuerelemente - das sind diejenigen Teile eines digitalen Rechners, die die Ausführung von Befehlen in richtiger Reihenfolge, die Auswertung des jeweiligen Befehls und die Abgabe der geeigneten Befehle an das Rechenelement und an andere Schaltungen in dem ROM-Speicherelement und seiner zügehörigen Hardware/Zentralisiert ("IEEE Standards on Electronic Computers").
309809/1099
In typischer Weise handelt es sich bei einem Lesespeicher bzw. Festwertspeicher um eine rechteckförmige Speichermatrix, die eine Vielzahl von Wörtern zu speichern vermag, deren jedes aus einer Vielzahl von Bits besteht. Auf seine einfachste Funktion zurückgeführt erzeugt ein Bit eines Wortes eine Mikrooperation. Die ein Wort bildenden Bits werden parallel ausgelesen; werden sie gleichzeitig oder nacheinander durch einen externen Takt gesteuert ausgeführt, so bilden die betreffenden Bits einen Satz von Mikrooperationen. Dabei werden verschiedene Folgen von Mikrooperationen auf ihre Zusammenstellung zu Mikrooperationsbefehlen hin, mit deren Hilfe irgendwelche bezeichneten Funktionen festgelegt oder ausgeführt werden, wie z.B. die Herauslösung und Ausführung normaler Programmbefehle, als ein Mikroprogramm bezeichnet. Um hinsichtlich der Rechner-Hardware und des Rechner-Gebrauchs wirtschaftlich zu sein, werden im allgemeinen Mikroprogramme von unterschiedlichen Maschinenbefehlen durch Verändern der Ablauffolge oder von Programmteilen gemeinsam benutzt. Demgemäß umfaßt die Benutzung eines LeseSpeichers bzw. Festwertspeichers als Steuerelement eine erhebliche Verzweigung innerhalb des betreffenden Lesespeichers, um die Änderungen hin*- sichtlich der Ablauffolge der Mikrooperationen zu bewirken, die während der Verarbeitung des jeweiligen Programmbefehls zu benutzen sind. Zu diesem Zweck ist eine Anzahl von Verzweigungs-Mikrobefehlen zusammen mit subsidiären Verzweigungseigenschaften als Teil des Mikrobefehlsrepertoires des Festwertspeichers vorgesehen. Da es zwingend erforderlich ist, daß die Verzweigungseigenschaften einer Maschine zuverlässig funktionieren und daß jedes Bit eines Mikrobefehls fehlerfrei übertragen und gespeichert wird, so daß ein Steuerungsausfall der Maschine nicht auftritt, gev/innen eine Sicherheitsprüfung
309 8Q9/1Ö99
und. eine Fehlerprüfung der Leseepeicher-Verzweigungseigenschaften Hauptbedeutung.
Die bisher bekannten Verfahren zur Ermittelung von Fehlern in einem Rechnersystem sind verschiedene Wege gegangen. Als hauptsächliches Verfahren ist irgendeine Form eines Datenvergleichs vorgenommen worden, bei dem Daten mit irgendeinem bestimmten vorgegebenen oder unabhängig berechneten, erwarteten Ergebnis verglichen werden. Die meisten Sicherheitsprüf- und Fehlerprüfverfahren erfordern jedoch eine Reihe von Wiederholungsoperationen, zu denen Abtast-, Verzweigungs-, Speicher-, Vergleichs- und Ausgabeoperationen gehören.
Ein besonderes bekanntes Verfahren zur Fehlerfeststellung in einem Festwertspeicher ist in der US-PS 3 343 141 beschrieben. Bei diesem Verfahren erfolgt, mit wenigen Worten gesagt» eine Bit-um-Bit-Reihenprüfung des Festwertspeichers. Bei dieser Betriebsart wird ein Hauptspeicher sowohl als Datenquelle als auch als Steuereinrichtung ausgenutzt, und zwar im Unterschied zum normalen Betrieb, bei dem Daten aus dem Hauptspeicher entnommen werden, um in Datenwege geleitet zu werden, und bei dem eine Steuerinformation aus dem Lesespeicher aufgenommen und Decodern zugeführt wird, die ihrerseits die Datenwege steuern bzw. tasten. Bei der Lesespeichermatrix werden dessen Adressenregister und das örtliche Speicherregister durch eine Anordnung geprüft, die eine nur auf 1-Zeichen ansprechende Prüfeinrichtung und einen einstufigen Binär-Trigger enthält, der wiederholt geordnet werden kann, um aus einer Gruppe von binären Schaltungselementen Jeweils ein Element unter der Leitung eines Programmbefehls zu prüfen, der in einem löschbaren Speicher (Hauptspeicher) gespeichert ist.
309909/10
Ein weiteres bekanntes Fehlerprüfverfahren ist in der US-PS 3 518 413 angegeben. Bei diesem bekannten Fehlerprüfverfahren führt eine Fehlerprüfvorrichtung die Prüfung der Verarbeitung von im einzelnen angegebenen Teilen eines Programmbefehls zu bestimmten Zeitpunkten durch, um zu bestimmen, ob die Ablauffolge bis zu diesem Zeitpunkt normal fortgeschritten ist.
Bei noch anderen bekannten Verfahren wird, eine Paritätsprüfung angewandt, gemäß der ein Paritätsbit abgegeben oder nicht abgegeben wird, und zwar gemäß einem ungeraden oder einem geraden Paritätsprüfschema, gemäß dem festgestellt wird, ob in der Verarbeitungsinformation ein Bit entfallen ist oder ein Bit hinzugekommen ist.
Die meisten dieser Systeme erfordern jedoch gesonderte Prüfungen und/oder ¥orriehtwng@2i zwe Prüfung des Prüf syst ems bzw. Prüf Schemas und/oder der Prüfvorrichtung» Dieser Vorgang kann bis ins Unendliche gehen,, ium in der Anlage sinen hohen Grad an Sicherheit zu erzielen» Darüber hinaus werden bei den bisher bekannten Prüfschemen bzw* Prüfsysteme^ Verzweigungsoperationen nicht unmittelbar geprüft,, sondern nur indirekt, und zwar als Ergebnis der Durchführung einer anderen Fefolerlokalisiermigsprüfung.
Der Erfindung liegt demgemäß die Aufgab© zu Grundeρ ein verbessertes Verfahren und· ein© varfessserte Vorrichtung zur Fehlerprüfung und Sicherheitsprüfung dar Veraweigungseigenschaftsn in einem Rechnersystem ψλι scha££en0
30 9 809/1Ö9
Gelöst wird die vorstehend aufgezeigte Aufgabe gemäß der Erfindung durch ein System zur Änderung bzw. Modifizierung eines Mikrobefehls, derart, daß im nichtgeänderten Zustand ein Mikrooperationstyp in Abhängigkeit von einem Mikrobefehl mit einem bestimmten Bitmuster erzeugt wird und daß im geänderten Zustand ein anderer Mikrooperationstyp auf den genannten Mikrobefehl hin mit demselben Bitmuster erzeugt wird. Dieses System ist erfindungsgemäß dadurch gekennzeichnet,
a) daß Generatoreinrichtungen vorgesehen sind, die auf ein bestimmtes Bit-Muster hin einen ersten Mikrooperationstyp erzeugen,
b) daß Signalauslöse- bzw. Signalfreigabeeinrichtungen vorgesehen sind, die in Abhängigkeit von einem bestimmten Satz von Verzweigungsmikrobefehlen hin zumindest ein Änderungssignal abgeben, und
c) daß mit den Generatoreinrichtungen und den Signalfreigabeeinrichtungen Änderungseinrichtungen verbunden sind, die in Abhängigkeit von dem Änderungssignal die Operation der Generatoreinrichtungen derart ändern, daß auf das für die Erzeugung des ersten Mikrobefehlstyps benutzte bestimmte Bit-Muster hin ein zweiter Mikrooperationstyp erzeugt wird.
Durch die Erfindung ist ferner ein Prüfsystem zur SicherheitsprUfung der Lesespeicher-Verzweigungseigenschaften eines Rechnersystems geschaffen. Dieses Prüfsystem ist erfindungsgemäß dadurch gekennzeichnet,
a) daß Generatoreinrichtungen vorgesehen sind, die auf einen Halt-(HTL)-Mikrobefehl hin eine Halt-(HLT)-Mikrooperation für das Anhalten eines Rechnerprogramms erzeugen,
b) daß bestimmte Speicherplätze für die Speicherung zumindest eines Befehls der HLT-Mikrobefehle vorgesehen sind, und
309809/ 1099
c) daß Änderungseinrichtungen vorgesehen sind, die in Abhängigkeit von einem ersten bestimmten Satz von Verzweigungsmikrobefehlen in dem Fall, daß dieser erste bestimmte Satz von Mikrobefehlen eine Verzweigung zu den bestimmten Speicherplätzen hin fordert, die HLT-Mikrooperation derart ändern, daß der HLT-Mikrobefehl die Fortsetzung des Rechnerprogramms bewirkt, während jeglicher Befehl des ersten bestimmten Satzes von Verzweigungs-Mikrobefehlen das Anhalten des Rechnerprogramais bewirkt.
Gemäß der Erfindung ist ferner ein Verfahren zur Sicherheitsprüfung bzw. zur Prüfung der Sicherheit der Lesespeicher-Verzweigungseigenschaften eines Rechnersystems geschaffen. Dieses Verfahren ist erfindungsgemäß dadurch gekennzeichnet,
a) daß ein Halt-Mikrobefehl HLT in ersten und zweiten bestimmten Speicherplätzen des Lesespeichers gespeichert wird, wobei der betreffende HLT-Mikrobefehl zur Erzeugung einer HLT-Mikrooperation führtj welche ein in dem Rechnersystem laufendes Mikroprogramm anhält,
b) daß die HLT-Mikrooperation in Abhängigkeit von einem Speicher- und Verzweigungs-Mikrobefehl (STOBRN) geändert wird, der eine Verzweigung zu einem der ersten bestimmten Speicherplätze hin fordert, woraufhin die genannte geänderte HLT-Mikrooperation den Fortlauf des Mikroprogramms ermöglicht,
c) daß eine Verzweigung zu einem der ersten bestimmten Speicherplätze hin auf den STOBRN-Mikrobefehl hin vorgenommen wird und
d) daß der geänderte HLT-Mikrobefehl ausgeführt wird, woraufhin das Mikroprogramm fortgesetzt wird·
309809/ 1 099
Eine bevorzugte Ausführungsform der Erfindung weist, mit wenigen Worten gesagt, ein RIT-Flipflop auf, welches im gesetzten Zustand die Operation der Halt-HLT-Mikrooperation ändert bzw. modifiziert. Der normale, nicht geänderte Betrieb der HLT-Mikrooperation besteht darin, den Rechnertakt anzuhalten bzw. stillzusetzen. Ist das RIT-Flipflop gesetzt, so setzt die HLTrMikrooperation den Takt nicht still, Jedoch wird der betreffende Takt durch ^eden anderen Mikrobefehl stillgesetzt. Wenn das RIT-Flipflop durch einen Mikrobefehl gesetzt ist, muß somit der nächste Mikrobefehl ein HaIt-HTL-Befehl sein, um die Maschine in Betrieb zu halten.
Das RIT-Flipflop wird durch drei Mikrobefehle gesetzt:
a) Speichern und Verzweigen "STOBRN" zu einem Speicherplatz 0003 (oktal),
b) Speichern und Verzweigen "STROBRN" zu einem Speicherplatz 7774 (oktal) und
c) "MAINTRA 2R"
Wenn irgendeiner dieser Mikrobefehle zu dem bestimmten Speicherplatz geführt wird, müssen diese zu einem Speicherplatz verzweigen, der eine HLT-Mikrooperation enthält. Wenn bei der Ausführung dieser Mikrobefehle keine Fehler auftreten, setzt die Maschine ihren Lauf fort; ansonsten hält die Maschine an. Auf diese Weise ist ein Steuerungsausfall vermieden, und ferner erfolgt eine Fehleridentifizierung.
An Hand von Zeichnungen wird die Erfindung nachstehend beispielsweise erläutert.
Fig. 1 zeigt in einem Blockdiagramm ein die Erfindung benutzendes System.
309809/ 1099
~9" - 2242Ό09
Fig. 2 zeigt ein Lesespeicher-Wortformat eines die Erfindung benutzenden Systems. .
Fig. 3 zeigt verschiedene Mikrobefehlsformate, die das System zu benutzen imstande ist.
Fig. 4 zeigt schematisch in einem Blockdiagramm Verzweigungseigenschaften gemäß der Erfindung.
Fig. 5 zeigt ein Verknüpfungsblockdiagramm einer Vorrichtung, die die Operation einer HLT-Mikrooperation zu ändern gestattet. Fig. 6 zeigt in einem detaillierten Verknüpfungsblockdiagramm eine Anordnung gemäß der Erfindung. .
Fig. 7 zeigt in einem Zeitdiagramm die Folge verschiedener Zustände bei einer Anordnung gemäß der Erfindung. Fig. 8 veranschaulicht in einem Flußdiagramm das Sicherheitsund Fehlerdiagnoseverfahren.
In Fig. 1 ist in einem Blockdiagramm ein die Erfindung benutzendes vorbildliches System gezeigt»-Der Systemaufbau ist der eines programmierbaren Endgeräts, obwohl die Erfindung auch bei anderen Systemen anwendbar ist, einschließlich eines Gesamtrechnersystems.
Gemäß Fig. 1 stellt ein Lese- bzwe Festwertspeicher (ROM) 100 eine Steuereinrichtung für das System dar« In dem Lesespeicher 100 sind verschiedene Typen bzw» Arten von Mikrobefehlen mit den in Fig. 3 dargestellten Formaten gespeichert. Die Mikrobefehle werden in ein U-Register 1.01 gelesen, bei dem eine Paritätsprüfung bezüglich der 14 Bits niederer Ordnung zuzüglich des ggfs. vorhandenen (16„) Paritätsbits höchster Ordnung ausgeführt wird. Das 15« Bit erfüllt keine normale Steuerfunktion, sondern dient zur Entstörung bzw. ProgramnH korrektur gemäß der Erfindung (worauf weiter unten noch näher eingegangen wird), um die Lesespeicher-Folgesteuerung an
309809/1Ö9S
ausgewählten Stellen in dem Mikroprogramm anzuhalten. Die Polgesteuerung des Lesespeichers 100 wird im allgemeinen durch schrittweises Erhöhen des Inhalts eines R-Registers ausgeführt, dessen Inhalt durch eine Inkrementeinrichtung schrittweise erhöht wird, und zwar unter der Steuerung eines Unterbefehls RP1, um das nächste Wort der Folge aus dem Lesespeicher auszulesen. Dabei sind zwei Funktionen vorhanden, die diesen schrittweisen Betrieb des Lesespeichers 100 ändern. Die eine Funktion ergibt sich aus der Prüf- und Springlogik (nicht gezeigt), und die andere Funktion ergibt sich aus den nachstehend noch näher zu beschreibenen Lesespeicher-Verzweigungseigenschaf ten.
einrichtungen, Im allgemeinen ermöglichen die Verzweigungseigenschaxten bzw./ eine aus dem Lesespeicher in das U-Register 101 ausgelesene neue Adresse zu dem R-Register 102 zu übertragen. Dabei sind, mit wenigen Worten gesagt, drei Verzweigungstypen vorhanden: Die Grundverzweigung, die lediglich die Übertragung des Inhalts des U-Registers 101 zu dem R-Register 102 ausführtj die gespeicherte Verzweigung, die die oben erwähnte Übertragung bewirkt, nachdem die in dem R-Register 102 gerade vorliegende Adresse zu dem A-Register 103 übertragen worden ist (die in diesem System gerade vorliegende Adresse ist die Adresse der Verzweigung zuzüglich der Zuwachsgröße); ein Austausch des Inhalts des A-Registers 103 mit dem Inhalt des R-Registers 102.
Der in das U-Register 101 gelesene Mikrobefehl wird durch die Mikrobefehlsdecoder- und Verzweigungslogik 108 decodiert, welche die Bit-Kombination in dem U-Register 101 als Mikrooperationen und Unterbefehle auswertet. (Bezüglich einer vollständigeren Erläuterung der Mikrobefehlsdecodierung sei
0 9 8 0 9/1099
auf Seite 46? ctes Buches "Digital Computer Design Fundamentals11 von Yaohan Chu, McGraw Hill Book Company, hingewiesen.)
Ein SR-Register 105 stellt das Hauptarbeitsregister dar; es hat viele Funktionen. Zum einen dient dieses Register als örtliches Hauptspeicherregister, durch welches eine Information in den Häuptspeicher 104 hinein oder aus diesem herausgelangen kann. Der Inhalt eines Speicherplatzes, der durch einen Hauptspeicher-A-Adressenregister 103 adressiert wird, wird in das SR-Register 105 ausgelesen. Die betreffende Information kann über Ubertragungsleitungen einem Modem 110 zugeführt werden, oder die betreffende Information kann weiter verarbeitet und zu dem Hauptspeicher zurückgeführt werden. Ferner kann ein Fern-Endgerät unter Heranzieheung der Übertragungsleitungen und des SR-Registers 105 eine Information eingeben. Ein durch den AUF-Teil des Mikrobefehls gesteuerter 1-Bit-Addierer 106 ermöglicht, das SR-Register auf verschiedenen Wege mit Daten zu kombinieren, die z.B. von dem Hauptspeicher herstammen.
Der Hauptspeicher 104 ist funktionell in zwei Teilen organisiert. Die ersten 256 Bytes sind durch das A-Register 103 und durch einen 8-Bit»Parameter (nicht gezeigt) adressierbar, der durch den Lese/Schreib-Speichermikrobefehl bezeichnet bzw. spezifiziert ist. Diese 256 Bytes stehen für die Mikroprogrammanwendung als Zwischenspeicher für die Speicherung verschiedener Zustands-Bytes» Zählerstände und Registerstände zur Verfügung, Darüber hinaus sind zwei Unterabteilungen in dem Hilfsspeicher vorgesehen. Die ersten 128 Speicherplätze stehen für die ausschließliche Benutzung des Mikroprogramms zur Verfügung, wobei der Anwender des Programms an der Benutzung
309809/1 099
dieses Bereichs gehindert 1st. Die zweiten 128 Bytes werden als Übertragungsbereich zwischen dem Programmanwender und dem Mikroprogramm benutzt. Der übrige Bereich des Haupt- ; Speichers 104 dient der Benutzung durch das Anwenderprogramm als Puffer, für die Befehlsaufnahme und die Aufnahme anderer Daten.
Der Hauptspeicher 104 wird durch das Hauptspeicher-Adressenregister 103 adressiert. Das A-Register 103 kann eine Information ferner von dem SR-Reglster 105 her empfangen, oder sie kann ihren Inhalt mit dem des R-Registers 102 austauschen.
Die Verzweigung in einem Lese- bzw. Festwertspeicher wird durch eine Mikrobefehlsdecoder- und Verzweigungslogik 10Θ ausgeführt (die Verzweigungslogik ist auf dem vorliegenden Gebiet bekannt und braucht hier nicht im einzelnen beschrieben zu werden; es sei in diesem Zusammenhang z.B. auf das oben erwähnte Buch hingewiesen). Eine Verzweigung durch übertragung des Inhalts des U-Registers 101 zu dem R-Register wird unter der Einwirkung des Mikrobefehls BRN und des Unterbefehls FNR ausgeführt. Eine Verzweigung durch Austauschen des Inhalts des A-Registers 103 und des R-Registers 102 wird durch den Mikrobefehl TRA2R oder MAINTRA2R unter dem Einfluß der Unterbefehle FAR und FRA ausgeführt.
Bezugnehmend auf Fig. 2 sei bemerkt, daß ein Lesespeicherwort 200 aus 16 Bits besteht, die in verschiedenen Gruppen eingeteilt sind. Die Anzahl der Bits in irgendeiner Gruppe hängt von der Funktion der betreffenden Gruppe ab. Durch Decodieren der Lesespeicher-Bits werden sieben Mikrobefehlstypen erzeugt (siehe Fig. 3), wobei noch eine Ausweitung erfolgen kann, wenn neue Funktionen benötigt werden.
309809/109 9
Das Lesespeicherwort bzw. Lesespeicher-Wortformat 200 ist wie folgt unterteilt:
a) Bit 16 ist ein ungerades Paritätsbit (Bit 15 ausgeschlossen),
b) Bit 15 ist ein Halt-Bit (manuelles Setzen/Zurückstellen auf einer Brettschaltung),
c) Bits13, 14 - sie bestimmen die Mikrobefehlstypen,
d) Bits 9 bis 12 - sie spezifizieren die Rechenwerkfunktion (AUF),
e) Bits 1 bis 8 - sie spezifizieren die Datenbits bei den MikroOperationen.
(In dem BRN- oder STOBRN-Mikrobefehl sind die Bits 1 bis 12 die Adresse).
In Fig. 3 sind sieben Typen von Mikrobefehlen gezeigt, und zwar folgende Typen:
1) Bezüglich des Typs 1 des Mikrobefehls besitzt das* Mikrooperationsfeld (Bits 1 bis 8) eine Steuerwirkung über die meisten Datenwege der Verarbeitungseinrichtung. Die Mikrooperationen dieses Typs sind in zwei Gruppen unterteilt. Die eine Gruppe betrifft die Steuerung von Datenübertragungen zwischen Registern und innerhalb der Register, wie die schrittweise Vergrößerung oder Verkleinerung des Inhalts des SR-Registers. Die andere Gruppe dient dazu (1"1/2/US-) Impulse an die verschiedenen Teile des Systems abzugeben, wie z.B. Lesekarten-Impulse, Setzimpulse zum Setzen eines Fehler-Flipflops, etc..
2) Bei den Typen 2 und 3 unterscheiden sich die Mikrobefehle auf Grund der Tatsache, daß sie auf Daten hin wirksam werden, die in gewissen Speicherplätzen gespeichert sind, und daß sie der Verarbeitungseinrichtung mitteilen müssen, wo die Daten in dem Kernspeicher untergebracht sind, damit nämlich die betreffende Verarbeitungseinrichtung die Daten
309309/1099
auffinden kann.
3) Der Mikrobefehl des Typs 4 wird dazu benutzt, einen Byte-Parameter in ein bestimmtes Register zu laden.
4) Der Mikrobefehl des Typs 5 wird im Rahmen der Erfindung unmittelbar benutzt; er erfüllt zwei Funktionen:
a) Unbedingte Verzweigung - Verzweigung zu einer Lesespeicher-Adresse N. Der Maschinenname für diesen Mikrobefehl lautet BRN; er ist dadurch definiert, daß das Bit 14 eine 1 ist und daß das Bit 13 eine Null ist. Unter der Steuerung dieses Mikrobefehls wird der Inhalt des U-Registers 101 gemäß Fig. 1 und 4 durch den Unterbefehl FNR zu dem R-Register 102 hin übertragen, womit eine einfache Verzweigung bewirkt wird.
b) Speichern und Verzweigen - zunächst Speichern der vorliegenden Adresse und Verzweigen zu der Lesespeicher-Adresse N. Der Maechinenname für diesen Mikrobefehl lautet STBRN; er ist dadurch bezeichnet, daß das Bit 14 eine 1 ist und daß das Bit 13 eine 1 ist. Unter der Steuerung dieses Befehls wird der Inhalt des R-Registers 102 zuerst in das A-Register unter dem Einfluß des Unterbefehls FRA übertragen, und dann wird der Inhalt des U-Registers 101 unter dem Einfluß des Unterbefehls FRN in das R-Register 102 übertragen. Dieser Vorgang veranlaßt die Speicherung der normalen nächsten Adresse in dem A-Register 103, wodurch diese Adresse für eine Unterprogramm-Rückkehradresse bzw. -Rücksprungadresse oder für andere Benutzungsfälle reserviert 1st. Um zu dem nächstfolgenden Befehl zurückzukehren, nachdem ein Unterprogramm ausgeführt worden ist, wird ein Befehl benutzt, der mit TRA2R bezeichnet ist, bei dem es sich um einen Mikrobefehl des Typs 7 handelt. Dieser Befehl bewirkt, daß der Inhalt des R-Registers 102 mit dem Inhalt des A-Registers ausgetauscht wird, und zwar durch gleichzeitige Ausführung
309809/1099
der Unterbefehle PAR und FRA (siehe Fig. 4). Eine weitere Form des TRA2R-Befehls ist der MAINTRA2R-Befehl, "bei dem es sich ebenfalls um einen Mikrobefehl des Typs 7 handelt. Dieser Mikrobefehl unterscheidet sich aber von dem TRA2R-Mikrobefehl dadurch, daß er einen 4-Bit-Satz enthält.
Wird irgendeiner der Verzweigungs-Mikrobefehle in Anwendung auf das Fehlerdiagnose-Unterprogramm ausgeführt, so wird der betreffende Mikrobefehl so programmiert, daß eine Verzweigung zu einem Speicherplatz hin erfolgt, in welchem ein HLT-Mikrobefehl enthalten ist (siehe Fig. 8).
5) Der Mikrobefehl des Typs 6 dient zur Prüfung der smpfangsseitigen I/O-Parität.
6) Der Mikrobefehl des Typs 7 wird z.B. dazu benutzt, den
#6X1
Lesespeicherzyklus anzuhalten oder kein» Operationshefehl für Programmkorrekturzwecke oder andere Zwecke auszugeben.
Zu den Mikrobefehlen des Typs 7 gehören die Befehle HLT, TRA2R, MAINTRA2R und KOP, auf' die weiter unten noch näher eingegangen werden wird.
Im folgenden sei auf Fig. 4 näher eingegangen, in der die • Mikroprogramm-Verzweigungseigenschaften in Blockform veranschaulicht sind. Ferner ist in Fig. 4 der Lesespeicher 100 mit dem R-Adressenregister 102 und dem örtlichen Lesespeicher-Register bzw. U-Register 101 gezeigt. Eine dem Adressenregister 102 zugeordnete Schritt-Logik 107 bewirkt ein Hinzuaddieren einer 1 zu dem Inhalt des R-Registers unter der Steuerung des Unterbefehl.s RP1. Demgemäß wird bei Fehlen einer Verzweigungs-Mikrooperation der in der Folge nächste Mikrobefehl ausgeführt.
309809/109 9
Das Α-Register 103 wird als Arbeitsregister im Hinblick auf die Verzweigungseigenschaften benutzt. Der Inhalt des A-Registers 103 kann seriell durch das Rechenwerk des Rechners geleitet werden, um den betreffenden Inhalt zu verarbeiten und/oder im Hauptspeicher zu speichern, oder das betreffende Register wird einfach als Kurzzeitspeicher benutzt.
Die eine parallele Datenübertragung zwischen diesen Registern ermöglichenden Datenwege und Unterbefehle sind folgende:
a) Der Inhalt des U-Registers 101 kann unter der Steuerwirkung des Unterbefehls FNR parallel zu dem R-Register übertragen werden.
b) Der Inhalt des R-Registers 102 kann unter der Steuerwirkung des Unterbefehls FRA parallel zu dem A-Register hin übertragen werden.
c) Der Inhalt des A-Registers 103 kann unter der Steuerwirkung des Unterbefehls FAR parallel zu dem R-Register hin übertragen werden.
Darüber hinaus bewirkt das Lesespeicher-Adressenregister eine Adressierung des Lesespeichers 100, und der auf Grund dieser Adresse vorhandene Speicherinhalt wird zu dem U-Register 101 übertragen.
-einrichtungen Die oben erwähnten Mikroprogramm-Verzweigungseigenschaften bzw./ werden dazu herangezogen, drei grundsätzliche Verzweigungs-Mikrooperationen auszuführen. Ein zuvor im Hinblick auf Fig. 3 erläuterter Mikrobefehl des Typs 5 leitet die Ausführung der Verzweigungsfunktion und außerdem die Speicherung und Verzweigung. Der Verzweigungs-Mikrobefehl BRN ist (wie oben erläutert) dadurch festgelegt, daß das Bit U1^ des Registers 101 auf 1 gesetzt ist und daß das Bit U..^ des Registers 101 auf 0 gesetzt ist. Liegt dieser Zustand vor,
309809/ 1099
so werden die Bits U12 bis U1 , die den Inhalt des U-Registers 101 umfassen, unter dem Einfluß des Unterbefehls FNR zu dem R-Register 102 hin übertragen, womit eine einfach© Verzweigung bewirkt ist.
Der Speicher- und Verzweigungsbefehl STOBRN ist dann bezeichnet, wenn die Bits U1^ und U1, des Registers 101 auf 1 gesetzt sind. Wenn dies der Fall ist, wird der vorliegende Inhalt des R-Registers 102 unter dem Einfluß des Unterbefehls FRA parallel zu dem A-Register 103 hin übertragen. Der Inhalt des U-Registers 101 wird dann, wie zuvor erläutert, unter dem Einfluß des Unterbefehls FNR zu dem R-Register hin übertragen. Dieser Befehl veranlaßt daher die Speicherung und Reservierung der nächsten Adresse in dem Register 103, währenddessen ein Unterprogramm in dem Programm ausgeführt wird. Ist das betreffende Unterprogramm beendet, kann* die reservierte Befehlsadresse zu dem R-Register 102 für die Fortsetzung des Programms zurückgeführt werden. Diese Befehlsadressenrückführung von dem Arbeitsregister 103 zu dem Lesespeicher-Adressenregister 102 wird unter der Steuerwirkung des TRA2R-Befehls oder des MAIUTRA2R-Befehls bewirkt, bei dem es sich um eine spezielle Form des TRA2R-Befehls handelt und der von diesem Befehl sich dadurch unterscheidet, daß das Bit U^ auf 1 gesetzt ist.
Diese Befehle TRA2R und MAINTRA2R bewirken, daß der Inhalt des A-Registers 103 und der Inhalt des R-Registers 102 ausgetauschtwerden, und zwar durch gleichzeitige Ausführung der Unterbefehle FAR und FRA.
09809/1099
Wenn irgendeiner dieser Mikrobefehle ausgeführt ist, wird eine Verzweigung zu einem Speicherplatz vorgenommen, der einen Halt-Befehl HLT enthält. Wie weiter unten noch näher erläutert werden wird, läuft das Maschinenprogramm weiter, wenn keine Fehler vorhanden sind. Sind jedoch ein oder mehrere Fehler vorhanden, so hält die Maschine an. Dadurch ist ein Steuerungsverlust verhindert, und ferner erfolgt eine Fehleridentifizierung an Hand des Inhalts des R-Registers .102. Die Anordnung, die den HLT-Befehl derart modifiziert, daß dieser eine zu seiner normalen Operation entgegengesetzte Operation leitet bzw. anweist, ist in Fig. 5 gezeigt.
In Fig. 5 sind UND-Glieder 501 und 502 gezeigt, die mit ihren Eingängen an dem U-Register 101 (Fig. 4) angeschlossen sind. Der Ausgang bzw. die Ausgangsklemme des UND-Gliedes 501 ist mit einem Eingang bzw. einer Eingangsklemme eines UND-Gliedes 504 verbunden, während der Ausgang des UND-Gliedes 502 mit einem Eingang eines UND-Gliedes 505 verbunden ist. Die UND-Glieder 504 und 505 sind ferner mit einem Eingang an einem FNR-Funktionsgenerator angeschlossen (der in Fig. 6 als UND-Glied 520 dargestellt ist). Das UND-Glied 503 ist mit einem seiner Eingänge an die Bit-Stelle HqI4 des U-Registers 101 angeschlossen, und der andere Eingang des UND-Gliedes ist an einem FAR-Funktionsgenerator angeschlossen, der weiter unten noch näher zu beschreiben ist. Die Ausgänge der UND-Glieder 503, 504 und 505 sind mit den Eingängen eines ODER-Gliedes 510 verbunden, dessen Ausgang mit dem D-Anschluß eines Flipflops 500 verbunden ist. (Ein typisches Flipflop, das im Rahmen der vorliegenden Erfindung verwendet werden kann, ist ein solches des Typs SN7474, wie es von der Firma Texas Instruments Inc., Dallas, hergestellt wird; es sei jedoch bemerkt, daß auch andere Flipfloparten verwendet
309809/ 1 099
werden können.) Der Takteingang des Flipflops 500 ist mit dem Ausgang des UND-Gliedes 506 verbunden, dessen Eingänge mit einer C1B-Leitung bzw. mit Systemtaktimpulsgeneratoren verbunden sind.
Die Setz- oder 1-Klemme des Flipflops 500 ist mit einem Eingang eines Exklusiv-ODER-Gliedes 507 verbunden, dessen anderer Eingang mit einem HLT-Funktionsgenerator verbunden ist, der im Zusammenhang mit Fig. 6 noch erläutert werden wird. Der Ausgang des Exklusiv-ODER-Gliedes 507 ist schließlich mit der Systemtaktschaltung verbunden; das betreffende Verknüpfungsglied 507 hält die Taktimpulsabgabe an, wenn sein Ausgangssignal mit hohem Pegel auftritt.
Vom Ausgang des UND-Gliedes 501 tritt ein Ausgangssignal <*. auf, wenn das UND-Glied 501 übertragungsfähig ist. Das UND-Glied 501 ist übertragungsfähig, wenn die Bits Uq., , Uqo» U^ -z und U.. r gesetzt sind oder mit hohem Pegel auftreten und die übrigen Bits mit niedrigem »Pegel auftreten (d.h.
*= U14 * U13 ' Ü12 ' Ü11 % * U02 ' U01 >· Das
UND-Glied 502 ist übertragungsfähig, wenn sämtliche Bits gesetzt sind oder mit hohem Pegel auftreten, jedoch mit■ Ausnahme der Bits Uq.. und UQ2 (dies heißt β = U1^ · U^^ ·
U12 * ^11 U03 ' ^02 * ^01 ^* "°a ^e AusgangssiSnale 6^
und β mit dem Unterbefehl FNR undmäßig verknüpft werden, wird das Flipflop 500 in Abhängigkeit von dem auf der mit C1B bezeichneten Leitung auftretenden entsprechend zu bezeichnenden Impulssignal gesetzt, wenn <K oder β und FNR vorhanden sind. Wenn ein STOBRN-Befehl ausgeführt wird, und zwar entweder zu dem Speicherplatz 0003 oder zu dem Speicherplatz 7774 (oktal).j wird, soweit ersichtlich, das Flipflop 500 gesetzt, und es tritt die Funktion RIT auf. Da die Funktion RIT mit
309809/ 1099
der HLT-Funktion durch das Exklusiv-ODER-Glied 507 verknüpft wird, wird - kurz gesagt-der Takt angehalten, wenn die RIT-Funktion oder die HLT-Funktion eingestellt ist, nicht aber dann, wenn beide Funktionen vorhanden sind. Demgegenüber wird bei gesetztem Flipflop 500 und bei mit hohem Pegel auftretendem RIT-Signal und bei ebenfalls mit hohem Pegel auftretendem HLT-Signal das Exklusiv-ODER-Glied 507 nicht übertragungsfähig sein, wenn während des nächsten Mikrobefehls der Impuls C1B das HLT-Signal erzeugt. Dadurch wird der Takt nicht angehalten. Es dürfte somit ohne weiteres einzusehen sein, daß ein Speicher- und Verzweigungsbefehl STOBRN für den Oktal-Speicherplatz 0003 oder für den Oktal-Speicherplatz 7774 die nächste HLT-Mikrooperation ändern wird. Da die normale Funktion bzw. Operation der HLT-Mikrooperation darin besteht, den Maschinentakt anzuhalten, wenn das Flipflop 500 gesetzt ist, so daß das RIT-Signal mit hohem Pegel auftritt, wird der Takt durch die HLT-Mikrooperation nicht angehalten; dies erfolgt jedoch durch jeden anderen Mikrobefehl. An Hand der nachstehenden Werttabelle sind die verschiedenen Kombinationen der HLT-Mikrooperation und des RIT-Signals angegeben, die zum Stillsetzen oder zur Freigabe des Takts führen.
RIT Tabelle I Operationstyp
HLT 0 Taktstop Normallauf
0 1 0 Fehler-Stop
0 0 1 Normal-Halt
1 1 1 Prüfung einwandfrei
1 0 kein 3top
309809/ 1099
Die vorstehende Wertetabelle I zeigt im übrigen, daß dann, wenn die Signale HLT und RIT mit niedrigem Pegel auftreten, der Takt nicht angehalten wird. Tritt das Signal HLT mit niedrigem Pegel auf und das Signal RIT mit hohem Pegel, so wird der Takt angehalten. Tritt das Signal HLT mit hohem Pegel auf und das Signal RIT mit niedrigem Pegel, so liegt ein Normal-Halt vor. Dies heißt, daß die HLT-Mikrooperation nicht geändert worden ist. Treten die Signale HLT und RIT mit hohem Pegel auf, so liegt eine einwandfreie Prüfung vor, und der geänderte bzw. modifizierte HLT-Befehl tritt mit niedrigem Pegel auf; er bewirkt kein Anhalten des Takts.
Im Hinblick auf Fig. 6 sei bemerkt, daß NAND-Glieder 601 und 605 mit ihren Eingängen jeweils an die Bitsteilen 1 bis 8 des U-Registers 101 angeschlossen sind. Mit den Ausgängen der betreffenden NAND-Glieder 601 und 605 sind Inverter 602 bzw. 606 verbunden. Ferner sind NAND-Glieder 603 und 607 vorgesehen, die jeweils mit einem Eingang mit dem Ausgang des Inverters 602 bzw. 606 verbunden sind. Sechs Eingänge der Eingänge der NAND-Glieder 603 und 607 sind jeweils mit den Bitstellen 9 bis 14 des U-Registers 101 verbunden, während die übrigen Eingänge der jeweils acht Eingänge aufweisenden NAND-Glieder 603 und 607 nicht' benutzt sind. Der Ausgang des NAND-Gliedes 603 ist mit dem Eingang eines Inverters 6o4 verbunden, dessen Ausgang seinerseits mit dem Eingang eines UND-Gliedes 617 verbunden ist. Der Ausgang des NAND-Gliedes 607 ist mit dem Eingang eines Inverters 608 verbunden, dessen Ausgang mit dem Eingang eines UND-Gliedes 618 verbunden ist. Die UND-Glieder 617 und 618 sind mit weiteren Eingängen undmäßig zusammengefaßt an ein FNR-Generator-UND-Glied 520 angeschlossen. Der eine Eingang des UND-Gliedes 520 ist mit der Bitstelle 14 des U-Registers
309809/1099
2 2 A ? O O 9
verbunden, und der andere Eingang des betreffenden UND-Gliedes 520 ist an dem C1B-Impulsgenerator angeschlossen. Ein NAND-Glied 609 ist mit sioben seiner acht Eingänge an den Bitstellen 8 bis 14 des U-Registers 101 angeschlossen. Ferner ist das NAND-Glied 609 mit seinem Ausgang an dem Eingang eines Inverters 610 angeschlossen, dessen Ausgang seinerseits mit jeweils einem Eingang von NAND-Gliedern 611, 613 verbunden ist. Das NAND-Glied 611 ist mit sechs seiner Eingänge mit den Bitstellen 0 bis 3 und 5 bis 7 des U-Registers
101 verbunden. Der UQ^-Eingang des NAND-Gliedes 611 wird hier nicht benutzt. Dies ermöglicht, das Bit 4 als "Gleichgültigkeits"-Bit zu verwenden. Der Ausgang des NAND-Uliedes 611 ist mit dem Eingang eines Inverters 612 verbunden, der seinerseits den FAR-Unterbefehl erzeugt. Dieser Unterbefehl wird dazu ausgenutzt, den Inhalt des A-Registers 103 in das R-Register
102 zu übertragen. Das NAND-Glied 613 ist mit sieben seiner Eingänge an den Bit-Stellen 1 bis 7 des U-Registers 101 angeschlossen. Der Ausgang des NAND-Gliedes 613 ist mit dem Eingang eines Inverters 614 verbunden, der seinerseits die HLT-Mikrooperation erzeugt, und zwar auf einen HLT-Mikrobefehl in dem U-Register 101 hin. Ein UND-Glied 615 ist mit seinem einen Eingang an dem FAR-Funktionsgenerator angeschlossen, und der andere Eingang dieses UND-Gliedes 615 ist an der Bit-Stelle 4 des U-Registers 101 angeschlossen. Der Ausgang des UND-Gliedes 615 ist mit dem einen Eingang eines NOR-Gliedes 619 verbunden. Das UND-Glied 616 ist mit einem seiner Eingänge geerdet, und der andere Eingang ist "hochgelegt", d.h. verknüpfungsmäßig z.B. auf 1.
Die Ausgänge der UND-Glieder 616, 617 und 618 sind mit Eingängen des NOR-Gliedes 619 verbunden. Der Ausgang des NOR-
309809/1099
Gliedes 619 ist mit dem Eingang bzw. der Eingangsklemme eines Inverters 621 verbunden, dessen Ausgang mit dem D-Eingang bzw. der D-Klemme des Flipflops 500 verbunden ist. Das Flipflop 500 ist ein sogenanntes MIL Standard "D"-Flipflop, obwohl auch andere Flipfloparten verwendet werden können. Diese Art von Flipflop weist einen Takteingang auf, der ein Flipflop veranlaßt, seinen Zustand auf die Zuführung der zu positiven Pegelwerten ansteigenden Flanke eines Impulssignals hin zu ändern. Mit dem Takteingang des Flipflops 500 ist der Ausgang des NAND-Gliedes 622 verbunden, dessen Eingänge mit dem C1B-Impulsgenerator (nicht gezeigt) bzw. dem Systemtaktgenerator verbunden sind. Die Setz- oder 1-Klemme des Flipflops 500 liefert die RIT-Funktion, die dem einen Eingang eines Exklusiv-ODER-Gliedes 507 zugeführt wird. Die Rückstell- oder Null-Klemme des Flipflops 500 liefert die negierte RIT-Funktion. Das Exklusiv-ODER-Glied 507 ist mit einem weiteren Eingang an"dem HLT-Funktionsgenerator 614 angeschlossen. Der Ausgang des Exklusiv-ODER-Gliedes 507 ist mit der Systemtaktschaltung verbunden. Das UND-Glied 624 bildet den FRA-Generator; es ermöglicht die Übertragung des Inhalts des R-Registers 102 in das A-=Register 103. Die Eingänge dieses UND-Gliedes 624 sind mit dem FNR-Funktionsgenerator und der Bit-Stelle 13 des U-Registers 101 verbunden.
Im Betrieb erzeugen die Verknüpfungsglieder 601, 602, 603 und 604 im Zusammenwirken ein Verknüpfungssignal, welches anzeigt, daß das im U-Register 101 gerade vorliegende Bit-Muster ein zu dem Speicherplatz 0003 hinweisender Befehl STOBRN ist. In entsprechender Weise ermitteln die NAIID-Glieder 605, 6o6, 607 und 608 einen zu dem Speicherplatz 7774 hinweisenden Befehl ÜTOBRH. Wenn die Ausgangssignale der Inverter 604 und 608 mit hohem Pegel auftreten, ist eine Anzeige dafür vorhanden, daß der eine oder andere dieser Mikrobefehlstypen
309809/1099
in dem U-Register 101 zu dem betreffenden Zeitpunkt vorhanden ist. Das UND-Glied 520 stellt fest, daß eine Verzweigung, und zwar entweder eine gespeicherte Verzweigung oder eine normale Verzweigung, angefordert wird, und ferner erzeugt das betreffende UND-Glied 520 einen Unterbefehl FNR, der mit Auftreten die Übertragung des Inhalts des U-Registers 101 in das R-Register 102 ermöglicht. Die beiden UND-Glieder 617 und 618 verarbeiten die Ausgangssignale des UND-Gliedes 520 undmäßig mit den AusgangsSignalen des Inverters 6o4 bzw. 608. Diese undmäßig verknüpften Ausgangssignale werden dann odermäßig zusammengefaßt, und zwar durch das NOR-Glied 619 und den Inverter 621. Das UND-Glied 615, dessen Ausgangssignal ebenfalls durch das NOR-Glied 619 und den Inverter 620 odermäßig verarbeitet wird, ermittelt die Ausführung eines speziellen TRA2R-Mikrobefehls, der für die Wartungsprüfung benutzt wird. Das Bit 4, das in dem Fall, daß es eine 1 ist,' zum Ausgang des UND-Gliedes 615 geleitet wird, zeigt den speziellen TRA2R-Mikrobefehl an. Die mit dem Eingang des UND-Gliedes 615 über die Verknüpfungsglieder und 612 verbundenen Verknüpfungsglieder 609 und 610 zeigen an, daß der Mikrobefehl ein solcher des Typs 7 ist. Dies erfolgt dadurch, daß festgestellt bzw. bestimmt wird, daß die Bits 13 und 14 des U-Registers 101 beide Null sind und daß die AUF-Bits 9, 10, 11 und 12 eine Hexadezimale E (1110) bilden.
Das von dem Inverter 610 gelieferte Ausgangssignal wird von zwei gesonderten Verknüpfungsgliedern benutzt: Das eine Verknüpfungsglied 611 decodiert einen Teil des U-Registers 101 um anzuzeigen, daß der Mikrobefehl ein TRA2R-Mikrobefehl ist oder dass der FAR-Befehl zu aktivieren ist. Es sei darauf hingewiesen, daß bei dem Verknüpfungs-
309809/1 099
glied 611 die vierte Bit-Stelle Ul nicht als Eingangssignal für das Bit-Muster dient und bei der Erzeugung der FAR-Funktion nicht umfaßt ist. Das vierte Bit des U-Registers wird dem einen Eingang des UND-Gliedes 615 zugeführt um anzuzeigen, daß anstelle einer normalen FAR-Funktion der Betrieb mit einer FAR-Funktion des Wartungstyps erfolgt. Demgemäß läßt das Ausgangssignal des Inverters 621 durch die Verknüpfungsglieder 615 bis 619 unterstützt erkennen,, daß einer der drei Verzweigungsbefehle des Wartungstyps auszuführen ist. Demgemäß veranlaßt eine auftretende gespeicherte Verzweigung STOBRN zu dem Speicherplatz 0003 oder eine Verzweigung STOBRN zu dem Speicherplatz 7774 oder eine Wartungsverzweigung TRA2R, daß das RIT-Flipflop 500 gesetzt wird.
Das Verknüpfungsglied 622 steuert den Takteingangsimpuls für das Flipflop 500. Wie oben bereits erwähnt, handelt es sich bei dem Flipflop 500 um ein Flipflop des MIL-Standard-Typs D. Dieses Flipflop ist so aufgebaut, daß mit Auftreten eines positiven Signalsprungs am Ausgang des Verknüpfungsgliedes 622 das gerade vorliegende Ausgangssignal des Inverters 621, dessen Ausgangssignal dem D-Eingang des Flipflops 500 zugeführt wird, in dem betreffenden Flipflop gespeichert wird, bis der nächste Signalsprung am Verknüpfungsglied 622 auftritt. Auf diese Weise wird je C1B-Zyklus der Inverter 621 einmal abgetast.et um anzuzeigen, ob der gerade vorliegende Befehl einer des Wartungs-Verzweigungstyps ist. Liefert das Verknüpfungsglied 621 keine 1, so wird das RIT-Flipflop beim nächsten C1B-Zyklus zurückgestellt. Dadurch wird das betreffende Flipflop für eine Mikrobefehlsdauer gesetzt, wobei eine Änderung bzw. Modifizierung der nächsten Mikrooperation bei richtigem Betrieb erfolgt, nämlich
09809/1099
zu einem HLT-Befehl. Das NAND-Glied 613 und der Inverter 614 werden dazu herangezogen, den HLT-Mikrobefehl festzustellen, wenn er in dem U-Register 101 enthalten ist. Das NAND-Glied und der Inverter 610 stellen den höherwertigen Teil des Bitmusters in dem U-Register 101 fest; sie bestimmen damit den Mikrooperationstyp 7, d.h. die Bits UQ bis U1^. Das NAND-Glied 613 und der Inverter 614 ermitteln das niederwertige Bit-Muster in dem U-Register 101 im Hinblick auf eine vollständige Berücksichtigung des gesamten Musters, welches eine HLT-Mikrooperation darstellt. Die HLT-Mikrooperation ist vorhanden bzw. 1, wenn die Bits UQ1, U10, 13λ λ und U^p m**k hohem Pegel auftreten und wenn die übrigen Bits mit niedrigem Pegel auftreten. Wenn dieses Bit-Muster vorhanden ist, wird eine HLT-Mikrooperation ausgeführt.
Das Ausgangssignal des NAND-Gliedes 613 und des Inverters wird mit dem RIT-Ausgangssignal des Flipflop 500 mit Hilfe des Exklusiv-ODER-Gliedes 507 entsprechend einer Exklusiv-ODER-Funktion verknüpft. Auf diese Weise wird festgestellt, daß in dem Fall, daß das RIT-Flipflop 500 zurückgestellt ist, das Ausgangssignal des Exklusiv-ODER-Gliedes 507 eine 1 ist, wenn der HLT-Mikrobefehl vorhanden ist, und daß in dem Fall, daß das RIT-Flipflop 500 gesetzt ist, das Ausgangssignal des Exklusiv-ODER-Gliedes 507 Null und der HLT-Mikrobefehl vorhanden ist. Dieses Ausgangssignal wird anschließend dem Flipflop (nicht gezeigt) zugeführt, welches den Betrieb der Systemtaktschaltung steuert und welches die Stillsetzung des Taktes bei Auftreten des betreffenden Ausgangssignals veranlaßt. Dies dient für die Zwecke der Wartungsprüfung, wie dies in der nachstehend im Zusammenhang mit Fig. θ noch erläuterten Tabelle II angegeben ist.
309809/1099
Das UND-Glied 624 liefert den FRA-Unterbefehl, der die Übertragung des Inhalts des R-Registers 102 in das U-Register 101 ermöglicht, wenn der Mikrobefehl eine gespeicherte Verzweigung ist. Dies wird durch undmäßiges Zusammenfassen der FNR-Funktion und des durch eine 1 gebildeten 13.Bits des U-Registers ausgeführt.
Im folgenden sei auf das in Fig. 7 dargestellte Zeitdiagramm (nicht maßstabsgerecht) eingegangen, welches die Ablauffolge des Abrufs, der Ausführung, des Setzens des RIT-Flipflops und des HLT-Befehls veranschaulicht. Mit C1A ist der Abrufzyklus für den Fall veranschaulicht, daß das U-Register 101 Daten aus einem solchen Speicherplatz des Lesespeichers aufnimmt, der durch das R-Register 102 adressiert ist. Dieser Zyklus dauert im wesentlichen 11/2 MikrοSekunden, obwohl auch andere Zeitspannen in diesem Zusammenhang benutzt werden können. Der C1B-Zyklus bzw. das C1B-Impulssignal dauert etwa 1/2 Mikrosekunde; bei dieser Zeitspanne handelt es sich um die tatsächliche Dauer, während der der Inhalt des Registers 101 in das Register 102 übertragen wird, wenn ein BRN-Mikrobefehl unter dem Einfluß eines Unterbefehls FNR ausgeführt wird oder wenn der Inhalt des Registers 102 unter dem Einfluß des Unterbefehls FRA in das Register 103 übertragen wird und wenn anschließend der'Inhalt des Registers unter dem Einfluß des Unterbefehls FNR in das Register 102 übertragen wird, oder aber wenn schließlich der Inhalt des Registers 102 mit dem Inhalt des Registers 103 ausgetauscht wird, und zwar mit Hilfe des Mikrobefehls TRA2R oder MAINTRA2R unter dem Einfluß der Unterbefehle FRA und FAR. Nach der Ausführung irgendeines Verzweigungs-Mikrobefehls zu einem Oktal-Speicherplatz 0003 oder 7774 ist das Flipflop 500 gesetzt,
309809/1099
und die Funktion RIT tritt mit hohem Pegel auf; sie verbleibt mit hohem Pegel bis zum nächsten ausgeführten Unterbefehl. Schließlich tritt eine HLT-Mikrooperation auf, wenn sie während eines Ausführungszyklus vorhanden ist.
Fig. 8 zeigt in einem Flußdiagramm eine Abtastprüfung und eine Prüfung von Verzweigungseinrichtungen. Zunächst erfolgt eine Prüfung der durch die Oktalwerte 0000 bis 7770 bezeichneten Speicherplätze des Lesespeichers hinsichtlich der Parität, und sodann werden die Oktal-Speicherplätze 7771 bis 7774 und 0003 bis 0006 dazu herangezogen, die Verzweigungseigenschaften bzw. -einrichtungen des Systems zu prüfen. Das System wird dadurch in Betrieb gesetzt bzw. ausgelöst, daß das R-Register 102 mit dem Speicherplatz 0000 in Verbindung gebracht wird (Block 701). An der durch die Lesespeicher-Adresse 0000 bezeichneten Stelle ist ein Mikrobefehl vorhanden, der eine Nichtausführungs-Prüfung festlegt bzw. einstellt (Block 702). Während dieser Nichtausführungs-Prüfung bewirkt das R-Register 102 eine Adressierung des jeweiligen Lesespeicherplatzes von dem Oktalwert 0000 bis zu dem Oktalwert 7770 (Blöcke 702 bis 705). Da jeder Lesespeicherplatz durch das Register 102 adressiert wird, wird der Inhalt des jeweiligen Speicherplatzes in das U-Register 101 gelesen, woraufhin eine Paritätsprüfung bezüglich des Inhalts vorgenommen wird. Dabei wird jedoch kein Unterbefehl oder Ausführungsbefehl abgegeben. Wenn der Lesespeicherplatz 7770 erreicht ist, wird die Nichtausführungs-Prüfung zurückgestellt (Block 705). Ab diesem Schritt ruft die Maschine nicht nur einen Befehl in das U-Register 101 ab, sondern sie führt diesen Befehl auch aus. Der nächste Speicherplatz 7771 des Lesespeichers 100 enthält einen Mikrobefehl STOBRN 0003, bei dem es sich um einen Speicher- und Verzweigungsbefehl zu dem Oktalspeicherplatz 0003 handelt. V/onn
309809/1099
das R-Register 102 den Speicherplatz 7771 adressiert (Block 706)j erfolgt eine Verzweigung zu dem Speicherplatz 0003 hin (Block 707). Wenn der STOBRN-Befehl richtig ausgeführt worden ist und wenn eine Verzweigung zu dem Speicherplatz 0003 hin ausgeführt worden ist, wird somit das Flipflop 500 gemäß Fig. 5 gesetzt, welches seinerseits die RIT-Funktion festlegt (siehe Fig. 6 und 7). Andern Speicherplatz 0003 (Block 707) ist eine HLT-Mikrooperation vorhanden. Die normale Funktion der HLT-Mikrooperation besteht darin, die Maschine anzuhalten. .Da das Flipflop 500 diese Mikrooperation jedoch verändert hat, und zwar durch Festlegen der RIT-Funktion, setzt die Maschine ihren Lauf fort. Dies zeigt an, daß der STOBRN-Mikrobefehl richtig ausgeführt worden ist. Ist z.B. keine Verzweigung zu dem Speicherplatz 0003 hin erfolgt als eine solche Verzweigung durch den STOBRN-Mikrobefehl in dem Speicherplatz 7771 gefordert worden war, so würde der Inhalt des Registers 102 auf einen Wert erhöht werden, der dem Oktal-Speicherplatz 7772 entspricht, an dem ebenfalls ein HLT-Mikrobefehl vorhanden ist (Block 709). In diesem Augenblick würde das Flipflop 500 jedoch die RIT-Funktion nicht festlegen bzw. einstellen, da die betreffende Funktion durch ein bestimmtes Bit-Muster eingestellt wird und da der Unterbefehl FNR in dem STOBRN-Befehl entweder auf den Speicherplatz 0003 oder 7774 hinweist, wie dies oben erläutert worden ist. Deshalb würde die Maschine unter dieser Bedingung anhalten und das Vorliegen eines Fehlers in der Verzweigung anzeigen. Auf die erfolgreiche Beendigung einer Verzweigung von dem Speicherplatz 7771 zu dem Speicherplatz 0003 hin (Blöcke 706 und 707) ist die Fähigkeit des von dem U-Register 101 zu dein R-Register 102 hinführenden Datenweges hinsichtlich der Übertragung von im wesentlichen durch Nullen gebildeten Zeichen überprüft
3098Q9/1Ö9Ö
worden· Das Lesespeicher-Adressenregister 102 adressiert dann den Lesespeicherplatz 0004 (Block 708), an welchem eine spezielle Form des TRA2R-Mikrobefehls oder des MAINTRA2R-Mikrobefehls vorhanden ist. Der MAINTRA2R-Mikrobefehl bewirkt auf seine Ausführung hin den Austausch des Inhalts des A-Registers 103 mit dem Inhalt des R-Registers 102. Da bei der Ausführung des vorhergehenden STOBRN-Mikrobefehls (Block 706) der Inhalt des R-Registers 102 zuerst auf die Oktal-Adresse 7772- vergrößert wurde, die dann kurzzeitig in dem A-Register 1.03 vor der Übertragung des Inhalts des U-Registers zu dem R-Register 102 zwischengespeichert wurde, führt die Ausführung des MAINTRA2R-Mikrobefehls dazu, daß die in dem A-Register 103 gespeicherte Adresse 7772 zurückgebracht und in das R-Register 102 eingegeben wird. Daraufhin wird der Inhalt des R-Registers 102 in das A-Register 103 eingeführt. Bei nunmehr die Adresse 7772 enthaltendem Lesespeicher-Adressenregister 102 erfolgt eine Verzweigung von dem Speicherplatz 0004 zu dem Speicherplatz 7772 (Blöcke 708 und 709). Dabei wird erneut die RIT-Funktion eingestellt bzw. bereitgestellt; da am Speicherplatz 7772 eine HLT-Mikrooperation vorhanden ist, setzt die Maschine ihren Betrieb fort, wenn die Übertragung richtig ausgeführt wird. Das Mikroprogramm wird fortgeführt zu dem Block 710 hin, wenn der Inhalt des R-Registers 102 auf die Adresse 7773 erhöht wird. An dem durch die Adresse 7773 bezeichneten Speicherplatz ist ein weiterer MAINTRA2R-Mikrobefehl, der ebenfalls einen Austausch des Inhalts des A-Registers 103 mit dem Inhalt des R-Registers 102 bewirkt. Dies führt dazu, daß die Adresse des Lesespeicherplatzes 0005 in das R-Register 102 gelangt, welches einen HLT-Mikrobefehl in das U-Register 101 liest. Bei diesem Mikrobefehl handelt es sich um den Mikrobefehl,
309809/ Ί 099
der an dem Lesespeicherplatz 0005 untergebracht ist. Da die RIT-Funktion des Flipflops 500 auf die Ausführung des MAINTRA2R-Mikrobefehls hin eingestellt worden war und da der HLT-Mikrobefehl modifiziert wurde, wird das Mikroprogramm zu dem nächsten Speicherplatz 0006 (Block 711 zu Block 712) ausgeführt, und die Maschine wird nicht angehalten. Der Lesespeicherplatz 0006 enthält einen STOBRN--Mikrobefehl, der in das U-Register 101 ausgelesen wird. Dieser Mikrobefehl wird decodiert und durch übertragung des Inhalts des U-Registers, das ist die Adresse 7774, in das R-Register 102 ausgeführt (Block 712 zu Block 713). Nach der Ausführung des STOBRN-Mikrobefehls wird die RIT-Funktion eingestellt. Der Speicherplatz 7774 enthält einen HLT-Mikrobefehl, der auf sein Auslesen in das Register 101 und auf seine Decodierung hin den Maschinenlauf ermöglicht, da nämlich die RIT-Funktion eingestellt ist. Die nächste Lesespeicherplatzadresse ist die Adresse 7775 (Block 714). An diesem Speicherplatz ist ein Verzweigungs-(BRN)-Mikrobefehl vorhanden, der eine Verzweigung der Maschine zu dem letzten Lesespeicherplatz 7777 hin bewirkt (der Speicherplatz 7776 ist ein Speicherplatz, der für Paritätsfehlerprüfung reserviert ist und der bei dieser Prüfung übergangen wird). Der letzte Speicherplatz (Block 716) dient zur Prüfung einesWartungsschalters der vorgesehenen Wartung s schalt er-, welcher anzeigt, ob dieses Unterprogramm erneut ausgeführt oder ob zu anderen Fehlerprüfungen übergegangen werden sollte. Ist der betreffende Schalter geöffnet, so wird der Inhalt des Lesespeicher-Adressenregisters 102 um 1 erhöht, wodurch das Prüf-Unterprogramm wieder zu dem Speicherplatz 0000 zurückgebracht wird. Auf diese Weise werden die Nichtausführungs-Prüfung eingestellt und alle Vorgänge wieder ausgeführt. Liefert
309809/ 1 099
der Prüfschalter eine 1, so wird der Inhalt des Lesespeicher-Adressenregisters einmal im Normalfall oder für den Fall, daß die Prüfung gültig ist, vergrößert, und das Programm wird zu dem Lesespeicherplatz 0001 oder Block 703 hin geführt. An diesem Speicherplatz ist eine Verzweigung zu dem Speicherplatz 0002 vorhanden. Die Verzweigung wird ausgeführt, und das Programm verzweigt sich aus dieser Prüffolge zu anderen Prüfvorgangen.
An Hand der nachstehenden Tabelle II sind verschiedene Zustände des R-Registers und des Α-Registers sowie die verschiedenen Übertragungen veranschaulicht, die unter dem Einfluß verschiedener Mikrobefehle erfolgen. Ferner ist die Fähigkeit der geprüften Maschine veranschaulicht.
Tabelle II
"R" Mikro- "A" bedeutende Schritt Vorher Befehl Vorher Maßnahmen
geprüfte Fähigkeit
7771
"STOBRN" 00Ü3
0003 übertragen von U nach R 7772 übertragen von R nach A
0003
"HLT" 7772
U nach R, Übertragung von 0003 Verzweigungs-Decodie- rung (wenn "FNR" nicht codiert wird, hält die Maschine bei 7772 an). Wenn RIT die Maschine nicht eingestellt ha*
hält
sie bei 0003 an
309809/ 1099
-.33 -
"R" Mikro- "A" bedeutende Schritt Vorher befehl Vorher Maßnahmen
geprüfte Fähigkeit
0004 MAINTRA2R 7772
7772 übertragen von A nach R 0005 übertragen von R nach A
7772 HLT
0005
R nach A und A nach R, Übertragung von 7772 Decodierung von TRA2R (wenn FAR nicht decodiert wird, hält die Maschine bei 0005 an)
7773 MAINTRA2R 0005 0005 übertragen von * A nach R
0005 HLT
7774
R nach A und A nach R, Übertragung von 0005 (es sei bemerkt, daß dies das Komplepent von 7772 ist)
0006 STOBRN
7774
7774 7774 übertragen von U nach R
7774 HLT
0006
U nach R, Übertragung von 7774 Xes sei bemerkt, daß dies das Komplement von 0003 ist)
Der Schritt 1 der Tabelle II erfolgt im Block 706 gemäß Fig. 7 oder bei dem Lesespeicherplatz 7771. Das R-Register enthält die Adresse 7771, bei der es sich um die vergrößerte Adresse des Speicherplatzes handelt, an dem der Rückstell-Nichtausführungs-Prüfungs-Befehl zuvor die Verzweigungseigenschaft- bzw. Verzweigungseinrichtungs-Prüfung begonnen hat. Nachdem die Nichtausführungs-Prüfung zurückgeführt bzw. zurückgestellt war (Block 705 gemäß Fig. 7), wurde somit die Adresse 7770 auf 7771 erhöht, die den Mikrobefehl STOBRN 0003 enthält. Der vorhergehende Zustand des A-Registers 103 ist nicht bekannt. Auf die Ausführung des STOBRN-Mikrobefehls hin wird der Inhalt 7772 des R-Registers 102 zuerst in das
309809/ 1099
Α-Register 103 übertragen, und der Inhalt des U-Registers 101, der nunmehr die Adresse 0003 enthält, wird in das R-Register 102 übertragen. Hierdurch wird die Übertragung des Datenmusters 0003 oder des im wesentlichen aus O-Zeichen bestehenden Musters von dem U-Register 101 zu dem R-Register 102 hin geprüft. Ferner wird die Verzweigungsdecodier-Mikrooperation FNR geprüft, da diese MikroOperation für die übertragung der 7772-Daten benutzt wird. Wenn RIT nicht eingestellt ist, wird im übrigen die Maschine bei 0003 angehalten, da nämlich der Inhalt des R-Registers 102 nicht vergrößert ist. (Dies stellt eine Form einer Selbstprüfung der Prüfvorrichtung dar.)
Der Schritt 2 zeigt, daß ein HLT-Mikrobefehl an dem Lesespeicherplatz 0003 untergebracht ist und daß das A-Register nunmehr die Adresse 7772 enthält.
Bei dem Schritt 3 ist die Maschine von dem Lesespeicherplatz 0003 zu dem Lesespeicherplatz 0004 weitergeführt worden, der einen MAINTRA2R-Mikrobefehl enthält. Das A-Register 103 enthält noch die Adresse 7772. Auf die Ausführung dieses Befehls hin wird das Datenmuster 7772 aus dem A-Register 103 zu dem R-Register 102 hin übertragen, und der vergrößerte Inhalt des R-Registers 102, der gegeben ist durch den Code 0005, wird zu dem A-Register 103 übertragen. Durch diesen Vorgang wird der Inhalt des Α-Registers mit dem Inhalt des R-Registers ausgetauscht. Dieser Befehl führt zur Überprüfung der Übertragung der Daten des Codes 7772 bzw. des im wesentlichen aus 1-Zeichen bestehenden Codes von dem R-Register zu dem A-Register und von dem A-Register zu dem R-Register. Ferner wird dadurch der Übertragungsweg des
309809/1099
Codes 0005 eingestellt. Darüber hinaus führt dieser Befehl zur Prüfung des FAR-Unterbefehls, da in dem Fall, daß der Befehl TRA2R decodiert wird und der Unterbefehl FAR nicht eingestellt ist, die Maschine an dem Speicherplatz bzw. an der Stelle 0005 anhält. Der Unterbefehl FAR wird zum Einstellen von RIT benutzt. Ist der Unterbefehl FAR nicht eingestellt, so bewirkt der am Speicherplatz 0005 vorhandene Befehl HLT das Stillsetzen des Takts. (Der Inhalt des R-Registers wird vergrößert, jedoch erfolgt keine Übertragung von A nach R.)
Der Schritt 4 zeigt, daß das R-Register 102 das Datenmuster 7772 enthält, bei dem es sich um eine Adresse handelt, der eine HLT-Mikrooperation innewohnt. Ferner zeigt der betreffende Schritt 4, daß das Register 103 das Datenmuster 0005 enthält.
Im Schritt 5 ist der Inhalt des R-Registers 102 auf 7773 vergrößert worden. Dies führt zur Abgabe eines weiteren MAINTRA2R-Mikrobefehls, der den Austausch des Inhalts des Α-Registers und des Inhalts des R-Registers bewirkt. Das A-Register 103 enthält noch die Adresse des Speicherplatzes 0005. Auf die Ausführung des MAINTRA2R-Mikrobefe.hls hin wird das in dem Α-Register enthaltene Datenmuster 0005 zu dem R-Register hin übertragen. Dieser Vorgang führt zur Überprüfung der Möglichkeit der Übertragung des Datenniucters 0005 von dem Α-Register zu dem R-Register und des Datenmusters 7772 von dem R-Register zu dem A-Register (es sei bemerkt, daß diese Datenmuster im Oktalsystem zueinander komplementär sind).
309809/ 1099
Der Schritt 6 zeigt das Ergebnis der obigen Übertragung,
wobei das R-Register nunmehr das Datenmuster 0005 und das
Α-Register das Datenmuster 7774 enthält, bei dem es sich um das vergrößerte Dateniauster 7773 handelt. In dem durch das R-Register 102 adressierten Lesespeicherplatz 0005 ist der HLT-Mikrobefehl enthalten.
Der Schritt 7 zeigt, daß das R-Register das Datenmuster 0006 enthält, welches zur Abgabe eines STOBRN-Speicher- und Verzweigungs-Hikrobefehls zu dem Speicherplatz 7774 führt, bei dem es sich um ein Komplement des Datenmusters 0006 handelt. Das Α-Register weist das Datenmuster 7774 auf. Auf die Ausführung des Mikrobefehls STOBRN hin wird das Datenmuster 7774 aus dem U-Register zu dem R-Register hin übertragen. (Übertragungen von dem Α-Register zu dem R-Register und von dem R-Register zu dem Α-Register mit komplementierten Datenmustern werden abgeschlossen. Die einzige noch übrigbleibende Prüfung besteht darin, von dem U-Register zu dem R-Register die Datenmuster 7774 zu übertragen, um das Datenmuster 0003 zu ergänzen (Schritt 1). Es stellt einen Ausfall der Prüfung dar, daß in dem Α-Register das Datenmuster 7774 gespeichert ist.)
309809/ 1 0Ö9

Claims (22)

  1. Patentansprüche
    ί Λ J System zur Änderung von Mikrobefehlen für die Erzeugung eines Mikrooperationstyps in Abhängigkeit von einem ein bestimmtes Bit-Muster enthaltenden Mikrobefehl im nichtgeänderten Zustand und eines dazu unterschiedlichen Mikrooperationstyps in Abhängigkeit von dem genannten,·dasselbe bestimmte Bit-Muster enthaltenden Mikrobefehl im geänderten Zustand, dadurch gekennzeichnet,
    a) daß Generatoreinrichtungen vorgesehen sind, die in Abhängigkeit von einem bestimmten Bit-Muster einen ersten Mikrooperationstyp erzeugen,
    b) daß Signalfreigabeeinrichtungen vorgesehen sind, die
    in Abhängigkeit von einem bestimmten Satz von Verzweigungs-Mikrobefehlen zumindest ein Änderungssignal abgeben, und
    c) daß mit den Generatoreinrichtungen und den Signalfreigabe einrichtungen Änderungseinrichtungen verbunden sind, die in Abhängigkeit von dem genannten Änderungssignal den Betrieb der Generatoreinrichtungen derart zu ändern gestatten, daß diese den zweite Mikrooperationstyp auf dasselbe bestimmte Bit-Muster hin erzeugen, das für die Erzeugung des ersten Mikrooperationstyps benutzt ist.
  2. 2. System nach Anspruch 1, dadurch gekennzeichnet, daß die Generatoreinrichtungen in Abhängigkeit von einem Halt-Mikrobefehl (HLT) mit dem bestimmten Bit-Muster eine Halt-Mikrooperätion (HLT) erzeugen.
  3. 3. System nach Anspruch 1, dadurch gekennzeichnet, daß der erste Mikrooperationstyp eine Halt-Operation ist, die das Mikroprogramm anhält, und daß der zweite Mikrooperationstyp eine Portsetz-Operation ist, die zur Fortsetzung des Mikroprogramms dient.
    309809/1099
  4. 4. System nach Anspruch 1, dadurch gekennzeichnet, daß der bestimmte Satz von Verzweigungs-Mikrobefehlen aus einer Gruppe von Befehlen ausgewählt ist, die MAINTRA2R- und STOBRN-Befehle umfaßt.
  5. 5. System nach Anspruch 4, dadurch gekennzeichnet, daß der bestimmte Satz von Verzweigungs-Mikrobefehlen eine Verzweigung zu einem von zwei komplementären Lesespeicherplätzen (0003 oder 7772 im Oktalsystem) fordert.
  6. 6. System nach Anspruch 1, dadurch gekennzeichnet, daß die Änderungseinrichtungen durch ein Flipflop (500) gebildet sind und daß die Generatoreinrichtungen und die Signalfreigabeeinrichtungen NAND-Glieder enthalten, wobei der Betrieb der Generatoreinrichtungen durch das Setzen des Flipflops (500) änderbar ist.
  7. 7. System nach Anspruch 1, dadurch gekennzeichnet, daß Unterbefehls-Generatoreinrichtungen (619) vorgesehen sind.
  8. 8. System nach Anspruch 7, dadurch gekennzeichnet, daß die Unterbefehls-Generatoreinrichtungen (619) Unterbefehle FNR, FAR und FRA erzeugen.
  9. 9. System nach Anspruch 8, dadurch gekennzeichnet, daß die Änderungseinrichtungen mit den Signalfreigabeeinrichtungen undmäßig für die Erzeugung des Änderungssignals zusammengefaßt sind.
  10. 10. System nach Anspruch 9» dadurch gekennzeichnet, daß die Änderungseinrichtungen (504,505,510) zwei Änderungssignale («* , /3 ) liefern.
    309809/1099
  11. 11. System nach Anspruch 10, dadurch gekennzeichnet, daß das eine Änderungssignal (:*) eine "1" ist, wenn der Boolesche Ausdruck
    a) oC= U14-U13-U12-U11-U10-U09-U08-U07-U06-U05-U04.
    Ur1-Z-U00-Un,, erfüllt ist ,und daß das andere 03 02 01 '
    . Änderungssignal ( β ) in dem Fall eine "1" ist, daß der Boolesche Ausdruck
    *> /3= U14-U13-U12-U11-U10-U09-U08-U07-U06-U05-U04.
    U0-^U02-U01 erfüllt ist, wobei Un Lesespeicher-Bit-Positionen eines U-Registers (101) kennzeichnen.
  12. 12. System zur Prüfung der Sicherheit von Verzweigungseigenschaften, insbesondere Lesespeicher-Verzweigungseigenschaften eines Rechnersystems, insbesondere für ein System nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet,
    a) daß Generatoreinrichtungen vorgesehen sind, die auf einen Halt-(HTL)-Mikrobefehl hin eine HaIt-(HLT)-Mikrooperation erzeugen, die das Anhalten eines Rechnerprogramms bewirkt,
    b) daß bestimmte Speicherplätze zur Speicherung zumindest eines der HLT-Mikrobefehle vorgesehen sind und
    c) daß Änderungseinrichtungen vorgesehen sind, "die in Abhängigkeit von einem, ersten bestimmten Satz von Verzweigungs-Mikrobefehlen in dem Fall, daß der betreffende erste bestimmte Satz von Mikrobefehlen eine Verzweigung zu den bestimmten Speicherplätzen erfordert, die· HLT-Mikrooperation derart zu ändern gestatten, daß der HLT-Mikrobefehl die Fortsetzung des Rechnerprogramnis bewirkt, während jeder Verzweigungs-Mikrobefehl des ersten
    309809/1099
    bestimmten Satzes von Verzweigungs-Mikrobefehlen das Anhalten des Rechnerprogramms bewirkt.
  13. 13. System nach Anspruch 12, dadurch gekennzeichnet, daß ein Verzweigungs-Mikrobefehl des ersten bestimmten Satzes von Verzweigungs-Mikrobefehlen ein Speicher- und Verzweigungs-Befehl (STOBRN) ist.
  14. 14. System nach Anspruch 12, dadurch gekennzeichnet, daß die bestimmten Speicherplätze Lesespeicherplätze sind und daß ein HLT-Mikrobefehl in den bestimmten Lesespeicherplätzen gespeichert wird.
  15. 15. System zur Fehlerprüfung und Sicherheitsprüfung von Lesespeicher-Verzweigungseigenschaften eines Rechnersystems, insbesondere in einem System nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet,
    a) daß ein Rechner-Hauptspeicher (104) vorgesehen ist,
    b) daß ein Rechner-Lesespeicher (IOO) vorgesehen ist, der zur Speicherung von dem Rechner-Hauptspeicher (104) zugeführten Mikrobefehlen dient,
    c) daß mit dem Hauptspeicher (104) ein Hauptspeicher-Adressenregister (1Θ3) verbunden ist,
    d) daß mit dem Hauptspeicher (104) und dem Hauptspeicher-Adressenregister (103) ein örtliches Hauptspeicher-Register (105) verbunden ist;,
    e) daß mit dem Lesespeicher (100) ein Lesespeicher-Adressenregister (102) verbunden ist,
    f) daß mit dem Lesespeicher (lOO^mit dem Lesespeicher-Adressenregister (102) und einem Mikrobefehlsdecoder (IO8) ein örtliches Lesespeicherregister (101) verbunden ist,
    309809/ 1099
    g) daß mit dem örtlichen Lesespeicherregister (101), dem Lesespeicher-Adressenregister (102) und dem Hauptspeicher- Adressenregister (103) eine Verzweigungslogik verbunden ist und
    h) daß ein zur Mikrobefehlsänderung dienendes Untersystem vorgesehen ist, das auf bestimmte Bits in dem örtlichen Lesespeicherregister (101) hin die MikroOperationen zu ändern gestattet, die auf dasselbe bestimmte Bit-Muster in dem örtlichen Lesespeicherregister (101) hin erzeugt werden.
  16. 16. Fehlerdiagnosesystem nach Anspruch 15, dadurch gekennzeichnet, daß das zur Mikrobefehlsänderung dienende Untersystem folgende Einrichtungen enthält:
    a) Erste Einrichtungen, die mit dem örtlichen Leöespeicherregister (101) verbunden sind und die auf ein erstes bestimmtes Bit-Muster in diesem örtlichen Lesespeicherregister (101) hin eine HLT-Mikrooperation erzeugen, die auf die Operationsausführung hin das Anhalten des Rechners bewirkt,
    b) zweite Einrichtungen, die mit dem örtlichen Lesespeicherregister (101) verbunden sind und die auf ein zweites bestimmtes Bit-Muster in dem örtlichen Lesespeicherregister (101) hin einen FAR-Unterbefehl erzeugen,
    c) dritte Einrichtungen, die mit dem örtlichen Lesespeicherregister (101) verbunden sind und die auf ein drittes bestimmtes Bit-Muster hin einen FNR-Unterbefehl erzeugen, '
    d) vierte Einrichtungen^ die mit dem örtlichen Lesespeicherregister (101) verbunden sind und die auf ein bestimmtes Bit in dem örtlichen Lesespeicherregister (101)
    309809/1099
    und den FNR-Unterbefehl hin einen FRA-Unterbefehl erzeugen,
    e) fünfte Einrichtungen, die in Abhängigkeit von einend fünften bestimmten Bit-Muster in dem örtlichen Lesespeicherregister (101) ein erstes Änderungssignal erzeugen, und
    f) sechste Einrichtungen, die auf das Änderungssignal hin die HLT-Mikrooperation ändern, wobei diese Änderung auf die Ausführung der HLT-Mikrooperation hin die Fortsetzung des Betriebs des Rechners bewirkt.
  17. 17. Verfahren zur Sicherheitsprüfung der Lesespeicher-Verzweigungseigenschaften eines Rechnersystems, insbesondere in einem System nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet,
    a) daß ein Halt-(HLT)-Mikrobefehl in ersten und zweiten bestimmten Speicherplätzen des Lesespeichers (100) gespeichert wird, wobei der HLT-Mikrobefehl für die Erzeugung einer HLT-Mikrooperation das Anhalten eines in dem Rechnersystem laufenden Rechner-Mikroprogramms bewirkt,
    b) daß die HLT-Mikrooperation in Abhängigkeit von einem ' Speicher- und Verzweigungs-(STOBRN)-Mikrobefehl geändert wird, der eine Verzweigung zu einem der ersten bestimmten Speicherplätze erfordert, woraufhin die modifizierte HLT-Mikrooperation die Fortsetzung des Ablaufs des Mikroprogramms ermöglicht,
    c) daß eine Verzweigung zu einem Speicherplatz der ersten bestimmten Speicherplätze auf den STOBRN-Mikrobefehl hin erfolgt und
    d) daß die modifizierte HLT-Mikrooperation ausgeführt wird, woraufhin der Mikroprogrammbetrieb fortgesetzt wird.
    309809/ 1099
  18. 18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß auf die Ausführung einer modifizierten HLT-Mikrooperation hin der Mikroprogrammbetrieb fortgesetzt wird und ein nächster MAINTRA2R-Mikrobefehl abgerufen und ausgeführt wird und daß der MAINTRA2R-Mikrobefehl die HLT-Mikrooperation modifiziert und außerdem eine Verzweigung zu einem weiteren Speicherplatz der ersten bestimmten Speicherplätze bewirkt.
  19. 19. Verfahren zur Sicherheitsprüfung der Lesespeicher-Verzweigungseigenschaften eines' Rechner sy st ems, insbesondere in einem System nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet,
    a) daß Speicherplätze in einem Lesespeicher (100) für die Speicherung von Mikrobefehlen bereitgestellt werden,
    b) daß in bestimmten Speicherplätzen der genannten Speicherplätze ein Halt-(HLT)-Mikrobefehl gespeichert wird, auf dessen Ausführung hin die weitere Mikroprogrammausführung unterbrochen wird,
    c) daß in den übrigen für die Mikrobefehlsspeicherung vorgesehenen Speicherplätzen Verzweigungs-Mikrobefehle gespeichert werden, die aus einem bestimmten Satz von Mikrobefehlen ausgewählt sind, wobei diese Verzweigungs-Hikrobefehle eine Verzweigung zu einem der bestimmten Speicherplätze«fordern, die einen HLT-Mikrobefehl enthalten, und wobei die Verzweigungs-Mikrobefehle ferner die Modifikation des Halt-(HLT)-Mikrobefehls zu bewirken imstande sind, derart, daß auf die Ausführung des HLT-MikFobefehls hin die weitere Mikroprogrammausführung fortgesetzt wird,
    d) daß der erste, in einem der übrigen Speicherplätze gespeicherte Verzweigungs-Mikrobefehl ausgeführt wird, der eine Verzweigung zu einem ersten, einen HLT-Mikro-
    309 809/1099
    befehl speichernden Speicherplatz der bestimmten Speicherplätze erfordert,
    e) daß auf den ersten Verzweigungs-Mikrobefehl hin
    der HLT-Kikrobefehl modifiziert wird, der in dem ersten bestimmten Speicherplatz der einen HLT-Mikrobefehl speichernden bestimmten Speicherplätze gespeichert ist, wobei auf die Ausführung des betreffenden HLT-Mikrobefehls hin die weitere Mikroprogrammausführung fortgesetzt wird,
    f) daß auf den ersten Verzweigungs-Mikrobefehl hin eine Verzweigung zu dem ersten Speicherplatz der bestimmten Speicherplätze vorgenommen wird, der einen HLT-Mikrobefehl speichert, und
    g) daß der betreffende HLT-Mikrobefehl ausgeführt wird, der in dem genannten ersten Speicherplatz gespeichert ist, wobei auf die Ausführung des betreffenden HLT-Mikrobefehls hin der Mikroprogrammbetrieb fortgesetzt wird.
  20. 20. Verfaliren nach Anspruch 19, dadurch gekennzeichnet, daß die Verzweigung auf den ersten Verzweigungs-Mikrobefehl ausgesetzt wird und daß die Ausführung des in dem genannten ersten bestimmten Speicherplatz gespeicherten HLT-Mikrobefehls nicht vorgenommen wird, woraufhin ein nicht modifizierter HLT-Mikrobefehl, der in einem zweiten Speicherplatz der bestimmten Speicherplätze gespeichert ist, ausgeführt wird und das Anhalten des Mikroprogramms bewirkt.
  21. 21. Verfahren nach Anspruch 19» dadurch gekennzeichnet, daß ein M/i.IWTRA2R-Mikrobefehl in dem ersten Speicherplatz der übrigen t derartigen Befehlen zugeordneten
    309809/ 1099
    Speicherplätzen gespeichert wird.
  22. 22. Verfahren zur Sicherheitsprüfung der Lesespeicher-Verzweigungseigenschaften eines Rechnersystems, insbesondere in einem System nach einem der Ansprüche 1 Ms 11, dadurch gekennzeichnet,
    a) daß in einem Lesespeicher (100) Speicherplätze (0003, 0004, 0005, 0006) und dazu komplementäre Speicherplätze (7771, 7772, 7773, 7774) für die Speicherung von Mikrobefehlen bereitgestellt werden,
    b) daß in den Speicherplätzen bestimmte Mikrobefehle entsprechend folgender Beziehung eingespeichert v/erden: Lesespeicherplatz gespeicherter Mikrobefehl
    0003 HALT
    0004 ■ ' MAINTRA2R
    0005 HALT
    0006 STOBEN 7774
    7771 ■ STOBRN 0003
    7772 HALT
    7773 MAINTRA2R
    7774 HALT
    (λ ) wobei MAINTRA2R ein Verzweigungs-Mikrobefehl ist, der eine Verzweigung zu einem ursprünglichen Mikroprogramm zurückgewirkt und der einen Halt-Mikrobefehl derart zu modifizieren gestattet, daß der betreffende modifizierte Halt-Mikrobefehl die Fortsetzung des Mikroprogramms bewirkt,
    /3) wobei STOBRN ein Verzweigungs-Mikrobefehl ist, der eine Verzweigung des Mikroprogramms zu irgendeiner Lesespeicherstelle erfordert und darüber hinaus in dem Fall, daß eine Verzweigung zu einer Speicherstelle (0003 oder
    309809/1099
    gefordert ist, den Halt-Mikrobefehl derart zu modifizieren imstande ist, daß dieser modifizierte Mikrobefehl die Fortsetzung des Mikroprogramnibetriebs bewirkt,
    /γ-) und wobei der Halt-Mikrobefehl, der durch keinen anderen Mikrobefehl modifiziert ist, das Anhalten des Mikroprogramms zu bewirken imstande ist,
    c) daß der in einem Lesespeicherplatz (7771) gespeicherte STOBRN-Mikrobefehl ausgeführt wird, wobei diese Mikrobefehlsausführung eine Verzweigung zu einer anderen Speicherstelle (0003) und die Modifizierung des in dieser Speicherstelle (0003) gespeicherten Halt-Befehls bewirkt,
    d) daß der in der zuletzt genannten Lesespeicherstelle (0003) gespeicherte modifizierte Halt-Befehl ausgeführt wird, wobei diese Befehlsausführung die Fortsetzung des Mikroprogramms zu der nächsten Lesespeicherstelle (0004) bewirkt, die einen MAINTRA2R-Mikrobefehl speichert,
    e) daß der in der zuletzt genannten Speicherstelle (0004) gespeicherte MAINTRA2R-Mikrobefehl ausgeführt wird, wobei diese Mikrobefehlsausführung eine Verzweigung zu einer Speicherstelle (7772) zurück und ferner eine Modifizierung des in dieser Speicherstelle (7772) gespeicherten Halt-Befehls bewirkt,
    f) daß der in der zuletzt genannten Lesespeicherstelle
    (7772) gespeicherte modifizierte Halt-Befehl ausgeführt wird, wobei diese Befehlsausführung die Weiterführung des Mikroprogramms zu der nächsten Lesespeicherstelle
    (7773) bewirkt, die einen MAINTRA2R-Mikrobefehl speichert,
    g) daß der in der zuletzt genannten Speicherstelle (7773) gespeicherte MAINTRA2R-Mikrobefehl ausgeführt wird, wobei diese Mikrobefehlsausführung eine Verzweigung zu einer
    309809/1099
    Speichersteile (0005) zurück und ferner eine Modify zierung des in dieser Speicherstelle (0005) gespeicherten Halt-Mikrobefehls bewirkt,
    h) daß der in der zuletzt genannten Lesespeicherstelle (0005) gespeicherte modifizierte Halt-Befehl ausgeführt wird, wobei die Befehlsausführung die Portführung des Mikroprogramms zu der nädisten Lesespeicherstelle (0006) bewirkt, welche einen Speicher- und Verzweigungs-Mikrobefehl (STOBRN 7774) zu einer Speicherstelle (7774) speichert,
    i) daß der zuletzt genannte Mikrobefehl (STOBRN 7774) ausgeführt wird, wobei diese Mikrobefehlsausführung eine Verzweigung zu der zuletzt genannten Speicherstelle (7774) und ferner eine Modifizierung des in dieser Speicherstelle (7774) gespeicherten Halt-Mikrobefehls bewirkt, und
    j) daß der in dieser Lesespeicherstelle (7774) gespeicherte modifizierte Halt-Mikrobefehl ausgeführt wird, und zwar derart, daß das Mikroprogramm zu der nächsten Lesespeicherstelle hin fortgeführt wird,,
    309809/1 099
    H8
    Leerseite
DE2242009A 1971-08-26 1972-08-26 Verfahren und Anordnung zum Erkennen, ob im Mikroprogramm einer Datenverarbeitungsanlage vorgesehene Verzweigungsoperationen ausgeführt werden Expired DE2242009C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US17526671A 1971-08-26 1971-08-26

Publications (2)

Publication Number Publication Date
DE2242009A1 true DE2242009A1 (de) 1973-03-01
DE2242009C2 DE2242009C2 (de) 1984-03-08

Family

ID=22639621

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2242009A Expired DE2242009C2 (de) 1971-08-26 1972-08-26 Verfahren und Anordnung zum Erkennen, ob im Mikroprogramm einer Datenverarbeitungsanlage vorgesehene Verzweigungsoperationen ausgeführt werden

Country Status (8)

Country Link
US (1) US3728690A (de)
JP (1) JPS563582B2 (de)
AU (1) AU460047B2 (de)
CA (1) CA968061A (de)
DE (1) DE2242009C2 (de)
FR (1) FR2151420A5 (de)
GB (1) GB1382850A (de)
NL (1) NL7211118A (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT995722B (it) * 1973-10-10 1975-11-20 Honeywell Inf Systems Italia Calcolatore microprogrammato a interior decore espansibile mediante riconoscimento e interpre tazione di codici di operazione aggiunti
CA1039217A (en) * 1974-07-01 1978-09-26 Willy J. Grundherr Rotary wheel printing system
JPS51138354A (en) * 1975-05-26 1976-11-29 Hitachi Ltd Data processing apparatus having a pseude interruption generation inst ruction
US4449185A (en) * 1981-11-30 1984-05-15 Rca Corporation Implementation of instruction for a branch which can cross one page boundary
JP2762829B2 (ja) * 1992-02-06 1998-06-04 日本電気株式会社 電子計算機
US6009516A (en) * 1996-10-21 1999-12-28 Texas Instruments Incorporated Pipelined microprocessor with efficient self-modifying code detection and handling
US20040010458A1 (en) * 2002-07-10 2004-01-15 First Data Corporation Methods and systems for organizing information from multiple sources

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3391394A (en) * 1965-10-22 1968-07-02 Ibm Microprogram control for a data processing system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3343141A (en) * 1964-12-23 1967-09-19 Ibm Bypassing of processor sequence controls for diagnostic tests
US3560933A (en) * 1968-01-02 1971-02-02 Honeywell Inc Microprogram control apparatus
US3518413A (en) * 1968-03-21 1970-06-30 Honeywell Inc Apparatus for checking the sequencing of a data processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3391394A (en) * 1965-10-22 1968-07-02 Ibm Microprogram control for a data processing system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A.Knüpfer, Technik digitaler Rechenanlagen, VEB Verlag Technik Berlin, 1969, S. 258-261 *
Siemens Datenveratbeitungsanlage 3003, Grundsprache Teil 1: Maschinenbefehle, Beschreibung No.BS 103, Mai 1963, S. 1 bis 9 und 17 bis 19 *

Also Published As

Publication number Publication date
JPS4831032A (de) 1973-04-24
GB1382850A (en) 1975-02-05
DE2242009C2 (de) 1984-03-08
AU4311472A (en) 1973-12-13
NL7211118A (de) 1973-02-28
US3728690A (en) 1973-04-17
CA968061A (en) 1975-05-20
FR2151420A5 (de) 1973-04-13
JPS563582B2 (de) 1981-01-26
AU460047B2 (en) 1975-03-18

Similar Documents

Publication Publication Date Title
DE2416609C2 (de) Datenverarbeitungsanlage mit einer zentralen Verarbeitungseinheit und Multiprogrammierung mit mehreren Programmunterbrechungs-Prioritätsstufen
DE2316296C2 (de) Mikroprogrammierbarer Prozessor
DE2357003C2 (de) Prozessor für eine Mehrprogramm-Datenverarbeitungsanlage
DE3126878C2 (de) Mikroprogramm-Steuerschaltung zum Ausführen eines aus einem Steuerspeicher in einem Quellenregister aufgenommenen Mikrobefehls
DE2614000C2 (de) Diagnoseeinrichtung zur Prüfung von Funktionseinheiten
DE1499722C2 (de) Einrichtung zur Modifizierung von Informationswörtern
DE2714805C2 (de)
DE2456578C2 (de) Datenverarbeitungsanlage
DE2317870C2 (de) Schaltungsanordnung zur Steuerung der Datenübertragung zwischen dem Hauptspeicher und mindestens einem E/A-Gerät in einer digitalen Datenverarbeitungsanlage
DE1931966C3 (de) Datenverarbeitungsanlage mit Assoziativspeichern
DE2210325C3 (de) Datenverarbeitungseinrichtung
DE3239221A1 (de) Integrierte vorrichtung und verfahren zum pruefen eines mikroprozessor-systems
DE2400064A1 (de) Speicherpruefanordnung und diese verwendendes endgeraetsystem in einem datenverarbeitungssystem
DE2646162B2 (de) Schaltungsanordnung zum Ersetzen fehlerhafter Informationen in Speicherplätzen eines nicht veränderbaren Speichers
DE2806024A1 (de) Speichersystem mit fehlerfeststell- und korrekturmoeglichkeit
DE2755616A1 (de) Asymmetrischer multiprozessor
EP0097725A1 (de) Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen
DE2145709B2 (de)
DE2715029C3 (de) Schaltungsanordnung zur Diagnose oder Prüfung von funktionellen Hardware-Fehlern in einer digitalen EDV-Anlage
DE2364323C2 (de) Verfahren zur Behandlung von Unterbrechungsbedingungen in einer Datenverarbeitungsanlage
DE2242009A1 (de) System zur aenderung von mikrobefehlen sowie verfahren und system zur pruefung der sicherheit von verzweigungseigenschaften eines rechnersystems
DE3037475A1 (de) Schnittstellenschaltungsanordnung fuer eine datenverarbeitungsanlage
DE3138989A1 (de) Zusaetzliche funktionseinheit in einem mikroprozessor, mikroprozessorsystem und verfahren zu seinem betrieb
DE2702722A1 (de) Instruktionsinterpretation in elektronischen datenverarbeitungsanlagen
DE2723706A1 (de) Einrichtung zum adressenvergleich

Legal Events

Date Code Title Description
OD Request for examination
8125 Change of the main classification

Ipc: G06F 11/00

D2 Grant after examination
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: HONEYWELL BULL INC., MINNEAPOLIS, MINN., US

8339 Ceased/non-payment of the annual fee