DE2746505A1 - Dv-system mit einer einrichtung zum adressieren in einem festwertspeicher abgelegter mikroprogramme - Google Patents

Dv-system mit einer einrichtung zum adressieren in einem festwertspeicher abgelegter mikroprogramme

Info

Publication number
DE2746505A1
DE2746505A1 DE19772746505 DE2746505A DE2746505A1 DE 2746505 A1 DE2746505 A1 DE 2746505A1 DE 19772746505 DE19772746505 DE 19772746505 DE 2746505 A DE2746505 A DE 2746505A DE 2746505 A1 DE2746505 A1 DE 2746505A1
Authority
DE
Germany
Prior art keywords
memory
read
register
gate
address
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
DE19772746505
Other languages
English (en)
Other versions
DE2746505C2 (de
Inventor
Thomas F Joyce
Michel M Raguin
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 DE2746505A1 publication Critical patent/DE2746505A1/de
Application granted granted Critical
Publication of DE2746505C2 publication Critical patent/DE2746505C2/de
Granted 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/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

Description

27A6505
Die Erfindung betrifft ein Datenvorarbeitungssystem nach dem Gattungsbegriff dos Anspruchs 1.
In einem auf der"Manchester University Computer Inaugural Conference" vom July 1951 veröffentlichten Bericht hat M.V.Wilkes auf den Seiten 16-18 unter der Überschrift "The Best Way to Design an Automatic Calculating Machine" vorgeschlagen, Rechner mit einem veränderbaren Satz von Befehlen auszustatten. Normalerweise steht dem Programmierer ein vorgegebener Befehlssatz zur Verfügung, wobei jeder Befehl aus einer Folge von Elementaroperationen oder MikroOperationen besteht. Die Einführung von Mikrooperationen bedeutet den Entwurf einer Maschine mit veränderbaren Befehlen. Für jeden Eefehl ist die Mikrooperationsfolge üblicherweise in der Computer Hardware festgelegt. Wilkes hat demgegenüber eine Einrichtung vorgeschlagen, durch welche ein Programmierer Mikrobefehle zu einem Befehl zusammensetzen kann, den der Rechner auszuüben vermag. Durch Mikroprogrammierung könnte das Befehlsrepertoire eines Rechners geändert werden, wenn dieser für andere Zwecke eingesetzt wird. Für die Einführung eines veränderbaren Befehlsrepertoires wurde ein Speicher zum Speichern der Mikrooperationsfolgen als erforderlich angesehen und Wilkes schlug hierfür die Verwendung einer Diodenmatrix vor. Man bezeichnet solche Speicher heute als Festwertspeicher ROM oder besser gesagt, zerstörungsfrei lesbare Speicher. Die letztgenannte Bezeichnung dürfte dabei besser sein, weil ein Repertoire aus veränderbaren Befehlen die Möglichkeit einer Änderung des Speicherinhalts voraussetzt. Jedoch wird die Bezeichnung Festwertspeicher allgemein benutzt und soll.folglich auch in dieser Beschreibung als Bezeichnung für einen zerstörungsfrei lesbaren Speicher dienen. Es handelt sich um einen Speicher, dessen Inhalt durch Mikroprogrammierung, nicht jedoch von der Maschine selbst geändert werden kann. .
Die Einrichtung, v/elche den Ablauf der Mikrooperationen in einem Rechner durchführt, wird üblicherweise als Steuereinrichtung bezeichnet. Bei einer Steuereinrichtung für einen Festwertspeicher ROM bedeutet dies eine Vielzahl rechteckiger Speicheranordnungen mit einer speziellen Anzahl von Worten in jedem Speicher. Jedes
809816/0948
Wort besteht aus einer vorgegebenen Anzahl von Bits. Alle Bits eines Wortes werden zusammen ausgelesen und bilden zusammen einen Satz von Mikrobefehlen, die entweder gleichzeitig oder nacheinander im Rhythmus eines externen Taktgebers ausgeführt werden. Anschließend ein anderes Wort ausgelesen und in ähnlicher Weise abgewickelt. Jedes Wort bezeichnet eine Gruppe von Mikrooperationen, und eine Folge von Worten bezeichnet eine Folge von Mikrooperationsgruppen. Eine Gruppe von Worten, deren Mikrooperationen eine spezielle Funktion bestimmen oder durchführen, wird als Mikroprogramm bezeichnet. In der derzeitigen Technik werden unterschiedliche Einrichtungen als Festwertspeicher-Steuereinrichtung verwendet. Halbleitereinrichtungen setzen sich jedoch immer mehr durch.
Im einfachsten Anwendungsfall wird jedes Bit eines Mikroworts zur Erzeugung einer Mikrooperation benutzt. Eire Bit-Position im Wort enthält eine "1", wenn die entsprechende Mikrooperation in diesem Wort erwünscht ist; andernfalls ist das Bit 11O". Diese Mikroworte werden in einem Festwertspeicher ROM gespeichert. Ein aus dem Hauptspeicher MM ausgelesener Befehl setzt das Auslesen der ersten Serie von Mikroworten aus dem Festwertspeicher in Gang und bewirkt die Durchführung des aus dem Hauptspeicher gelesenen Befehls durch die Zentraleinheit des DV-Systems. Diese Technik ist bekannt und beispielsweise in dem Buch "Microprogramming: "Principles and Practices" von Samir S. Husson, veröffentlicht 1970 durch "Prentice Hall Inc., Englewood Cliffs, New Jersey. Darüberhinaus wurden mehrere Patente für verschiedene Merkmale mikroprogrammierbarer DV-Systeme veröffentlicht, beispielsweise die US-PS 37 36 567, wo ein vorbestimmtes Bit im letzten Mikrowort eines Mikroprogramms einen neuen Programmspeicherzyklus und einen neuen Mikroprogrammspeicherzyklus in Gang setzt. Festwertspeicher finden vielfache Anwendung, beispielsweise in den Rechnersystem^Honeywell 4200/8200 der Honeywell-Serie 60 sowie in den IBM-Serien 360 und 370.
809816/0948
27A6505
In jüngster Zeit sind Festwertspeicher in Kleinrechnern zur Steuerung der Befehlsdurchführung eingesetzt worden. Zwei Hauptforderungen treten immer mehr in den Vordergrund, nämlich einerseits eine größere Durchsatzkapazität und andererseits die Möglichkeit, den Benutzern ein breiteres Spektrum von Diensten anbieten zu können. Diese beiden Forderungen ergeben die Aufgabe, eine maximale Datenverarbeitungskapazität mit einem Minimalaufwand an Hardware zu ermöglichen. Einerseits sollen die Endkosten des DV-Systems verringert und andererseits dessen Kapazität erhöht werden. Diese beiden Forderungen stehen einander entgegen, denn zusätzliche Datenverabeitungsfähigkeiten und Kapazitäten benötigen mehr Hardware und sind somit teurer. Eine Verringerung der Kosten führt im allgemeinen zu einer Einschränkung der Einsatzmöglichkeiten, weil die zur Verfügung gestellte Hardware geringeren Umfang hat.
Obwohl Festwertspeicher RCwfcleinrechnern eingeführt wurden, um die Befehlsausführung durch Mikroprogramme und Mikrobefehle zu steuern, besteht weiterhin der Wunsch, einen wirkungsvolleren Festwertspeicher zur Befehlsausführung zu schaffen, indem die Hardware verringert, Speicherplatz gespart oder die Anzahl der bei der Durchführung eines Befehls erforderlichen Schritte vermindert wird. Herkömmliche Festwertspeicher verwenden einen Verzweigungs-Mikrobefehl, um zu verschiedenen Speicherplätzen im Hauptspeicher zu gelangen. Jeder Verzweigungsbefehl benötigt einen kompletten ROM-Zyklus oder 200 ns, um eine ROM-Adresse zu ändern. Um den unterteilten Speicherraum eines Festwertspeichers auszunutzen und in einigen Mikrobefehlen Schritte zu sparen, wird nach einer Möglichkeit gesucht, zu verschiedenen Speicherplätzen abzuzweigen, ohne einen Verzweigungsbefehl zu benötigen. Hierdurch könnten wenigstens 200 ns pro Verzweigungsoperation gespart und außerdem freier Speicherraum im Festwertspeicher ausgenutzt werden.
Aufgabe der Erfindung ist es, eine Einrichtung zum Adressieren in einem Festwertspeicher abgelegter Mikroprogramme zu schaffen, bei der diese Forderungen erfüllt sind. Diese Aufgabe wird gelöst
809816/0948
durch die im Anspruch 1 gekennzeichnete Erfindung. Die Verwendung eines sogenannten "DualrBits" in einer vorgegebenen Position eines Mikroworts ermöglicht es dem Mikroprogramm bei seinem Ablauf entweder Mikrobefehle zu verwenden, die in einem zusammenhängenden Block des Festwertspeichers abgelegt sind oder statt dessen in zwei oder mehr verschiedenen Blöcken von ROM-Speicherraum liegen. Dabei wird der Datendurchsatz und die Rechengeschwindigkeit nicht nachteilig beeinträchtigt. Mikroprogramme werden geschrieben, um eine vorgegebene Funktion, beispielsweise die Ausübung eines Mikrobefehls oder die Verarbeitung einer Unterbrechung durchzuführen. Es kann geschehen, daß sie nicht in einen Block gerade zugängigen Speicherraums im Festwertspeicher hineinpassen. Durch die Erfindung wird es möglich, für ein Mikroprogramm mehrere voneinander getrennte, also nicht unmittelbar aneinandergrenzende Speicheräume zu verwenden, ohne wegen dieser verteilten Anordnung der gespeicherten Information mehr Rechenzeit zu benötigen. Herkömmliche Verfahren benötigen hierfür einen Verzweigungsbefehl, der wenigstens einen ROM-Zyklus von typischerweise 200 ns dauert. Ist das Dual-Bit auf "0" gesetzt, so läuft das Mikroprogramm in einem zusammenhängenden Block von ROM-Speicherraum ab. Hat das Dual-Bit jedoch den Wert "1", so wird die Adresse des Mikroprogramms um eine vorgegebene Anzahl von Positionen, beispielsweise um 128 Positionen, vorangeschaltet, so daß im Festwertspeicher vorhandener leerer Speicherraum für die Speicherung eines Teils des Mikroprogramms eingesetzt wird, während der Rest in einem anderen freien Speicherraum untergebracht wird, der vom erstgenannten räumlich getrennt ist. Anstelle von 128 Positionen kann auch jede andere beliebige Anzahl von Schritten vorgesehen sein. Diese Aufteilung in verschiedene freie Speicherräume beeinträchtigt die Verarbeitungsgeschwindigkeit nicht, weil ein herkömmlicher Verzweigungsbefehl, der wenigstens einen ROM-Zyklus erfordert, nicht benötigt wird. Vorteilhafte Weiterbildungen der Erfindung ergeben sich aus den Unteransprüchen.
Die Erfindung wird nachstehend anhand eines Ausführungsbeispiels beschrieben. Dabei zeigt
809816/0948
Fig. 1 das Blockschaltbild der hier interessierenden Teile eines Hauptspeicher-Subsystems sowie eines Festwertspeicher-Subsystems gemäß dem Stand der Technik;
Fig. 2 das Blockschaltbild einer Ausführungsform der Erfindung;
Figuren 3a bis 3c die Formate verschiedener Typen von Mikrobefehlen wie sie im Rahmen der Erfindung Anwendung finden.
Zum besseren Verständnis der Erfindung wird zunächst anhand von Fig.1 der Stand der Technik erläutert. Ein herkömmlicher Halbleiterspeicher 1 mit wahlfreiem Zugriff nimmt Befehle und Daten auf. Das Hauptspeicher-Adressregister 2 speichert die Adressen der Speicherplätze im Hauptspeicher, welcher Informationen aus dem Datenausgaberegister DOR 3 erhält, sofern der Operationscode des Befehls eine Schreiboperation in den Hauptspeicher anfordert. Er speichert darüberhinaus die Adresse des Speicherplatzes im Hauptspeicher 1, welcher Informationen an das Dateneingaberegister DIR 4 liefert, sofern der Operationscode des Befehls eine Leseoperation anfordert. Das Eingaberegister 4 speichert Signale, welche einen Befehl darstellen, der unter der Steuerung des Festwertspeichersystems ausgeführt wird. Der Befehl wird in einem Decoder 10 decodiert, und 10 Bits, welche die Festwertspeicheradresse darstellen, werden vom Multiplexer 8 ausgewählt und zum ROM-Adressregister 6 übertragen, wo sie die Adresse im Festwertspeicher ROM 5 darstellen. Der Multiplexer 8 ist ein Dual-4:1-Multiplexer vom Typ SN74153, wie er auf den Seiten 9-351 bis 9-364 des "Integrated Circuit Catalog for Design Engineers" der Firma Texas Instruments Inc. beschrieben ist. Die Mikroworte werden im Festwertspeicher 5 gespeichert, der aus vier Speichermodulen ROM A - ROM D besteht, wobei jeder Modul 1024 Worte und jedes Wort 36 Bits zuzüglich 4 Paritäts-Bits umfaßt. Das hier gezeigte Festwertspeichersystem ist nur als Beispiel aufzufassen, denn auch andere Festwertspeicher mit unterschiedlichem Wortumfang können eingesetzt werden. Jedes Mikrowort im Festwertspeicher 5 wird durch ein 12-Bit-ROM-Adresswort aus dem ROM-Adressregister 6 adressiert. Die ersten zwei Bits 0 und 1 des
809816/0948
ROM-Adressregisters 6 stellen die Adresse des Moduls im Festwertspeicher 5 dar, während die folgenden 10 Bits 2-11 die Adresse innerhalb eines bestimmten Moduls bedeuten. Ein vom ROM-Adressregister 6 adressiertes Mikrowort wird in das lokale ROM-Register 7 eingelesen. Ein Mikrowort im lokalen ROM-Register 7 besteht aus verschiedenen Steuerbits, welche verschiedenen Subsystemen zugeführt werden und dort spezielle Steuerfunktionen ausüben. Diese Steuerfunktionen, ausgenommen diejenigen der sogenannten Dual-Bits in der Bit-Position 22 werden im einzelnen nicht beschrieben, weil sie für die vorliegende Erfindung von untergeordneter Bedeutung sind. In den Figuren 3a bis 3c sind jedoch einige typische Mikrowortformate wiedergegeben, um wenigstens einen Eindruck vom Aufbau dieser Mikroworte zu geben. Es können auch Mikroworte mit anderem als 36-Bit-Format Anwendung finden. Abv/eichend von den üblichen Formaten ist in der Bit-Position 22 ein besonderes Dual-Bit D vorhanden.
Zusammen mit dem Auslesen der 10 Bits eines Befehls, der die Adresse des ersten Wortes des auszuführenden Mikroprogramms im Festwertspeicher 5 anzeigt, v/erden diese 10 Bits auch in das ROSAR-Register 9 eingegeben, nachdem dieses vom Rechenwerk 17 um einen Schritt fortgeschaltet wurde. Somit hält das ROSAR-Register
9 die Adresse des nächsten Mikrobefehls in der auszuführenden Mikroprogrammfolge. Wird der Mikrobefehl, gesteuert durch das ROM-Adresswort, in das lokale Speicherregister 7 eingegeben, so wird er durch die nicht dargestellte Mikroprogrammsteuereinheit verarbeitet, sofern es sich nicht um einen Verzweigungsbefehl ähnlich demjenigen gemäß Fig. 3c handelt. Dabei werden die letzten
10 Bits des Verzweigungsbefehls über die Leitung 14 und dem Multiplexer 18 in das ROM-Adressregister 6 übertragen. Sie stellen die neue Verzweigungsadresse dar, so daß die Durchführung des Mikroprogramms an dieser neuen Adresse beginnt.
Zusätzlich werden die 10 Verzweigungs-Bits, welche die Adresse des ersten Befehls im auszuführenden Mikroprogramm darstellen, im ROSAR-Register 9 gespeichert,nach/cfen» dieses erneut durch das
809816/0948
" 9" . 27A6505
Rechenwerk 17 um einen Schritt fortgeschaltet wurde. In aufeinanderfolgenden Zyklen, die üblicherweise alle 200 ns ablaufen, überträgt das ROSAR-Register 9 jeweils 10 Bits über den Multiplexer 8 zum R0M-Adressregister6, und anschließend wird das ROSAR-Register 9 über die Leitungen 13 und 16 vom Rechenwerk um einen Schritt weitergeschaltet. Nachdem die Adresse des ersten Mikrobefehls vom ROM-Adressregister 16 geliefert wird, stellt das ROSAR-Register 9 die Adresse der nachfolgenden Mikrobefehle aller 200 ns im Rhytmus des Taktgebers 18 bereit, so daß das Mikroprogramm abläuft, bis ein Mikrowort im ablaufenden Mikroprogramm ein Auswahlsignal 20 hervorruft, aufgrund dessen eine andere Adressenqüelle über den Multiplexer 8 angeschlossen wird.
Mit dem insoweit herkömmlichen ROM-System ohne die Dual-Bit-Einrichtung würde für den Fall, daß ein Mikroprogramm nicht an einem einzigen Platz im Festwertspeicher untergebracht werden kann und deshalb mehrere Speicherplätze im Festwertspeicher nötig sind, ein gleichförmiger Ablauf durch Verwendung eines Mikrobefehls des in Fig. 3c dargestellten Typs Verwendung finden, bei dem die Bits 25 - 35 einen Verzweigungsbefehl zu einer sich nicht unmittelbar anschließenden Adresse darstellen.
Läuft jedoch ein Mikrobefehl, der in den Figuren 3a oder 3b gezeigten Art ab, wird ein zusätzlicher Mikrobefehl, der in Fig. 3c gezeigten Art mit einer Verzweigungsadresse benötigt. Man braucht hierzu einen zusätzlichen Festwertspeicherzyklus sowie zusätzlichen Speicherraum für das Mikroprogramm, um den in Fig. 3 gezeigten Befehl zu speichern. Sind mehrere solche Verzweigungen erforderlich, so werden der Datendurchsatz durch den Rechner sowie die Verarbeitungsgeschwindigkeit ernsthaft beeinträchtigt.
Bei einem Rechnersystem gemäß der Erfindung sind deshalb vorzugsweise sechs verschiedene Typen von Mikroworten vorhanden, von denen drei typische Formate in den Figuren 3a bis 3c wiedergegeben sind. Ihr Aufbau und ihre Funktion ergeben sich aus der nachfolgenden Tabelle:
809816/0948
Code Symbol Funktion Dual-Bit
BCL Schnittstellen
ITT R steuerung
Weite Verzweigung
LER Generalregister
steuerung
SBR Kurze bedingte
Verzweigung
SPL Mikroprogramm-
Fortqang
(splatter)
GCN Konstanten-Generator
Die Mikroworte ULB, SBR und SPL enthalten eine adresse zum Speicherplatz des nächsten Mikrowortes, wie dies beispielsweise beim ÜLB-Mikrowort gemäß Fig. 3c in Form der Verzweigungsadressa 50 dargestellt ist. Die in den Figuren 3a und 3b gezeigten Mikroworte BCL und LER weisen eine solche Adresse nicht auf, so daß normalerweise ein Mikrowort vom Typ gemäß Fig. 3c benutzt werden müßte, v/as einen zusätzlichen ROM-Zyklus bedeutet. Dies jedoch wird durch die nachfolgend anhand von Fig. 2 im einzelnen erläuterte Erfindung vermieden. Die erfindungsgemäße Schaltungsanordnung spricht auf das Bit 22 in den Mikroworten BCL und LER gemäß Fig. 3a und 3b an und erhöht die Adresse des Mikroprogramms um einen vorgegebenen Betrag, beispielsweise um 128 Stellen, wobei auch eine andere Anzahl von Stellen vorgesehen sein kann. Sodann läuft das Mikroprogramm an der neuen Verzweigungsadresse weiter.
Fig. 2 zeigt einen Teil der in Fig. 1 wiedergsgebenen Einrichtung in Verbindung mit der Schaltungsanordnung gemäß der Erfindung. Diejenigen Baugruppe in Fig. 2, welche schon in Fig. 1 dargestellt sind, haben die gleichen Bezugszeichen. Das ROM-Adressregister 6 ist das gleiche wie in Fig. 1, wobei der Setzeingang des Flip-Flops 04A jedoch an den Ausgang eines UND-Gatters 33 angeschlossen ist. Letzteres wird durchgeschaltet, wenn beiden Eingängen das Signal "1" zugeführt wird. Diese beiden Eingänge des UND-Gatters 33 erhalten das Signal "1", wenn entweder ein
809816/0948
Befehl vom Typ BCL oder LER ausgeführt wird und wenn der Anschluß 1 des Flip-Flops 22B ein Signal "1" führt. Der letztgenannte Anschluß ist mit dem einen Eingang des UND-Gatters 33 verbunden. Sein anderer Eingang legt am Ausgang des ODER-Gatters 32. Der eine Eingang des ODER-Gatters 32 ist mit dem Ausgang des UND-Gatters 30 verbunden, während der andere Eingang mit dem Ausgang eines UND-Gatters 31 in Verbindung steht. Das erstgenannte UND-Gatter 30 wird durchgeschaltet, sofern ein Befehl vom Typ BCL gemäß Fig. 3a abläuft, während das UND-Gatters 31 bei Ablauf eines Befehls vom Typ LER gemäß Fig. 3b durchschaltet. Der Adresscode eines Befehls vom Typ BCL ist 000 in den ersten drei Bits des Befehlsformats. Die ersten drei Flip-Flops 0OB - 02B des lokalen ROM-Registers 7 speichern den Code des auszuführenden Mikroworts. Wenn der Anschluß O der Flip-Flops 0OB, 01B und 02B auf "1" gesetzt wird, wird das UND-Gatter 30 aktiviert und zeigt an, daß ein Befehl vom Typ BCL abläuft. In ähnlicher Weise würde das UND-Gatter 31 durchgeschaltet, wenn ein Code entsprechend der Binärzahl 4, d.h. der CODE 100 an den Eingangsklemmen des UND-Gatters 31 anliegt. Dies ist der Fall, wenn der Anschluß 1 des Flip-Flops 0OB den Wert
"1" und die Anschlüsse 0 der Flip-Flops 01B und 02B den Wert "1" haben. Wenn eines der UND-Gatter 30 oder 31 durchgeschaltet ist, wird das ODER-Gatter 32 aktiviert und liefert ein Signal "1" an das UND-Gatter 33. Soll das Mikroprogramm ohne Verzweigung weiterlaufen, so ist der Anschluß 1 des Flip-Flops 22B auf "o" und das UND-Gatter 33 ist gesperrt. Somit erfolgt keine Adressenänderung im ROM-Adressenregister 6 durch Setzen des Flip-Flops 04a. Hatte jedoch der MikroProgrammierer aus irgendeinem Grund nicht genügend Platz zum vollständigen Speichern des Mikroprogramms in einem Block des Festwertspeichers, so möchte er hierfür irgendeinen anderen Festwertspeicherbereich mit verwenden, welcher gerade frei ist. Er setzt hierzu das Bit 22 des Mikrobefehls BCL oder LER auf 11V. Dies führt dazu, daß das Flip-Flop 22B am Anschluß 1 das Signal "1" führt. Damit erhält auch der andere Eingang des UND-Gatters 33 das Signal "1" so daß dieses Gatter durchschaltet und ein Signal "1" an das
809816/0948
Flip-Flop O4A abgibt, so daß der Anschluß 1 dieses Flip-Flops den Wert "1" annimmt. Wenn dieses Flip-Flop 4A auf diese Weise gesetzt wird, addiert es automatisch den Binärwert 128 zu jeder beliebigen Adresse, die sich im ROM-Adressregister 6 befindet. Dies rührt daher, daß jedes Flip-Flop des ROM-Adressregisters 6 eine binäre Wertigkeit hat. Beispielsweise ist die Wertigkeit des Flip-Flops 11A gleich 1; von hier aus nach links fortschreitend ist die binäre Wertigkeit des nächsten Flip-Flops 1OA gleich 2; die des links daneben liegenden Flip-Flops gleich 4 usw., bis das Flip-Flop 04A erreicht ist, dessen binäre Wertigkeit 128 beträgt. Durch Setzen dieses Flip-Flops auf "1" wird automatisch der Binärwert 128 zur Adresse im ROM-Adressregister 6 addiert.
Aus den Figuren 3a bis 3c wurden diejenigen Teile der Mikrobefehlsformate beschrieben, die im Rahmen der Erfindung von Interesse sind, nämlich in erster Linie die Bits 0-2 sowie das D-Feld mit dem Dual-Bit in der Position 22. Die übrigen Bits können in beliebiger Weise zur Ausführung der erforderlichen Operationen einer Mikroprogrammeinheit angeordnet und gruppiert sein. Beim ROSAR-Register 9 handelt es sich um ein Adressregister (read only store address register) für einen zerstörungsfrei lesbaren Speicher ähnlich dem ROM-Adressregister 6.
809816/0948

Claims (5)

  1. HONEYWELL INFORMATION SYSTEMS INC. 17. OKI. 15»
    Smith Street 5101541 Ge
    Waltham, Mass., USA 2746 bU O
    DV-System mit einer Einrichtung zum Adressieren in einem Festwertspeicher abgelegter Mikroprogramme
    Patentansprüche:
    DV-System mit wenigstens einem Festwertspeicher zum Speichern mehrerer Mikroprogramme, die jeweils aus mehreren Mikroworten und diese aus mehreren codierten Bits bestehen, wobei die Mikroworte durch eine aus einer vorgegebenen Anzahl von Bits bestehende, in einem Festwertspeicher-Adressregister gespeicherte Festwertspeicheradresse adressiert sind und an den Festwertspeicher ferner ein lokales Festwertspeicherregister angeschlossen ist, in dem die adressierten Mikroworte gespeichert werden, dadurch gekennzeichnet, daß wenigstens zwei der Mikroworte ein unterschiedliches Format, nämlich ein Format vom Typ I und ein Format vom Typ II haben, wobei beide Formate keinen Verzweigungsmikrobefehl zu einem anderen Speicherplatz im Festwertspeicher (ROM 5) aufweisen; daß eine Einrichtung vorgesehen ist, um die Adresse eines ablaufenden Mikroprogramms selbsttätig um einen vorgegebenen Betrag fortzuschalten, sofern ein Mikrowort vom Typ I oder Typ II verarbeitet wird;
    daß diese Einrichtung eine an das lokale ROM-Register (7) angeschlossene erste Schaltungsanordnung (30-32) zur Erzeugung codierter Signale aufweist, welche ein im lokalen ROM-Register (7)gespeichertes Mikrowort vom Typ I oder Typ II kennzeichnen;
    809816/0948
    2 7 A 6 B O 5
    und daß an diese erste Schaltungsanordnung (30-32) und das lokale ROM-Register (7) eine zweite Schaltungsanordnung (33) angeschlossen ist, welche die ROM-Adresse um einen vorgegebenen Betrag weiterschaltet.
  2. 2. DV-System nach Anspruch 1,dadurch gekennzeichnet, daß in der ersten Schaltungsanordnung mehrere erste UND-Gatter (30,31) mit ihren Ausgängen an die Eingänge eines ersten ODER-Gatters (32) angeschlossen sind.
  3. 3. DV-System nach Anspruch 2,dadurch gekennzeichnet, daß in der zweiten Schaltungsanordnung ein zweites UND-Gatter (33) mit seinem einen Eingang an den Ausgang des ersten ODER-Gatters (32) und mit seinem anderen Eingang an das lokale ROM-Register (7) angeschlossen ist.
  4. 4. DV-System nach Anspruch 3,dadurch gekennzeichnet, daß das lokale ROM-Register (7) aus mehreren Flip-Flops (0OB - 35B) mit je einem Ausgang 0 (OT) und einem Ausgang 1 (IT) besteht und der zweite Eingang des zweiten UND-Gatters (33) an den Ausgang 1 eines vorgegebenen Flip-Flops (22B) angeschlossen ist.
  5. 5. DV-System nach Anspruch 4,dadurch gekennzeichnet, daß zwei erste UND-Gatter (30,31) vorgesehen sind, bei denen alle Eingänge des einen UND-Gatters (30) an den Ausgang 0 der ersten drei Flip-Flops (0OB - 02B) des lokalen ROM-Registers (7) angeschlossen und alle Eingänge mit Ausnahme von einem des anderen UND-Gatters (31) an die Ausgänge 0 der ersten drei Flip-Flops angeschlossen sind, während der übrige Eingang des anderen UND-Gatters (31) mit dem Ausgang 1 des ersten Flip-Flops (00B) des lokalen ROM-Registers (7) verbunden ist.
    809816/0948
DE19772746505 1976-10-18 1977-10-17 Dv-system mit einer einrichtung zum adressieren in einem festwertspeicher abgelegter mikroprogramme Granted DE2746505A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/733,558 US4124893A (en) 1976-10-18 1976-10-18 Microword address branching bit arrangement

Publications (2)

Publication Number Publication Date
DE2746505A1 true DE2746505A1 (de) 1978-04-20
DE2746505C2 DE2746505C2 (de) 1987-05-21

Family

ID=24948126

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19772746505 Granted DE2746505A1 (de) 1976-10-18 1977-10-17 Dv-system mit einer einrichtung zum adressieren in einem festwertspeicher abgelegter mikroprogramme

Country Status (7)

Country Link
US (1) US4124893A (de)
JP (1) JPS5350634A (de)
AU (1) AU509201B2 (de)
CA (1) CA1093214A (de)
DE (1) DE2746505A1 (de)
FR (1) FR2368090A1 (de)
GB (1) GB1594014A (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4189767A (en) * 1978-06-05 1980-02-19 Bell Telephone Laboratories, Incorporated Accessing arrangement for interleaved modular memories
US4307445A (en) * 1978-11-17 1981-12-22 Motorola, Inc. Microprogrammed control apparatus having a two-level control store for data processor
US4334268A (en) * 1979-05-01 1982-06-08 Motorola, Inc. Microcomputer with branch on bit set/clear instructions
JPS5619150A (en) * 1979-07-25 1981-02-23 Fujitsu Ltd Microprogram control system
US4336602A (en) * 1979-09-24 1982-06-22 Control Data Corporation Network for generating modified microcode addresses
JPS5654546A (en) * 1979-10-08 1981-05-14 Hitachi Ltd Arithmetic device
US4587611A (en) * 1980-09-04 1986-05-06 Amdahl Corporation Multiple module control store for use in a data processing system
US4370711A (en) * 1980-10-21 1983-01-25 Control Data Corporation Branch predictor using random access memory
JPS5786951A (en) * 1980-11-20 1982-05-31 Nec Corp Information processor
US4472772A (en) * 1981-08-03 1984-09-18 Burroughs Corporation High speed microinstruction execution apparatus
US4513389A (en) * 1981-11-12 1985-04-23 Ncr Corporation ROM security circuit
US4435756A (en) * 1981-12-03 1984-03-06 Burroughs Corporation Branch predicting computer
WO1985000453A1 (en) * 1983-07-11 1985-01-31 Prime Computer, Inc. Data processing system
US4740911A (en) * 1984-10-12 1988-04-26 Elxsi International Dynamically controlled interleaving
US5278840A (en) * 1987-07-01 1994-01-11 Digital Equipment Corporation Apparatus and method for data induced condition signalling
US5058007A (en) * 1987-11-05 1991-10-15 Raytheon Company Next microinstruction generator in a microprogram control unit
US5371862A (en) * 1991-02-27 1994-12-06 Kabushiki Kaisha Toshiba Program execution control system
US5471597A (en) * 1993-12-23 1995-11-28 Unisys Corporation System and method for executing branch instructions wherein branch target addresses are dynamically selectable under programmer control from writable branch address tables
JPH08320795A (ja) * 1995-05-24 1996-12-03 Fuji Xerox Co Ltd プログラム制御システム
US5838962A (en) * 1997-04-09 1998-11-17 Hewlett-Packard Company Interrupt driven dynamic adjustment of branch predictions
US6708268B1 (en) * 1999-03-26 2004-03-16 Microchip Technology Incorporated Microcontroller instruction set

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3445818A (en) * 1966-08-01 1969-05-20 Rca Corp Memory accessing system

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3292155A (en) * 1963-03-15 1966-12-13 Burroughs Corp Computer branch command
US3344404A (en) * 1964-09-10 1967-09-26 Honeywell Inc Multiple mode data processing system controlled by information bits or special characters
US3325785A (en) * 1964-12-18 1967-06-13 Ibm Efficient utilization of control storage and access controls therefor
US3454931A (en) * 1966-06-27 1969-07-08 Gen Electric Data processing system including address development apparatus
SE303056B (de) * 1967-08-31 1968-08-12 Ericsson Telefon Ab L M
US3560933A (en) * 1968-01-02 1971-02-02 Honeywell Inc Microprogram control apparatus
US3634883A (en) * 1969-11-12 1972-01-11 Honeywell Inc Microinstruction address modification and branch system
JPS4939852B1 (de) * 1969-11-19 1974-10-29
US3676851A (en) * 1970-03-31 1972-07-11 Ibm Information retrieval system and method
US3659275A (en) * 1970-06-08 1972-04-25 Cogar Corp Memory correction redundancy system
US3737867A (en) * 1971-02-12 1973-06-05 D Cavin Digital computer with accumulator sign bit indexing
US3728686A (en) * 1971-06-07 1973-04-17 Rca Corp Computer memory with improved next word accessing
US3736567A (en) * 1971-09-08 1973-05-29 Bunker Ramo Program sequence control
US3731285A (en) * 1971-10-12 1973-05-01 C Bell Homogeneous memory for digital computer systems
US3708786A (en) * 1971-10-20 1973-01-02 Martin Marietta Corp Stored program format generator
US3753242A (en) * 1971-12-16 1973-08-14 Honeywell Inf Systems Memory overlay system
IT951233B (it) * 1972-04-07 1973-06-30 Honeywell Inf Systems Sistema di comando di un calcola tore mediante microprogrammazione ed estensione dinamica delle fun zioni di controllo ottenuta da reti logiche
US3751637A (en) * 1972-05-25 1973-08-07 Trw Data Systems Digital computer and form reader for inventory control and recording cash transactions
IT993428B (it) * 1973-09-26 1975-09-30 Honeywell Inf Systems Unita di controllo di calcolatore microprogrammato con microprogram mi residenti in memoria e sovrap posizioni delle fasi interpretati ve di una microistruzione con la fase esecutiva della precedente microistruzione
US3958227A (en) * 1974-09-24 1976-05-18 International Business Machines Corporation Control store system with flexible control word selection

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3445818A (en) * 1966-08-01 1969-05-20 Rca Corp Memory accessing system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US-Firmenschrift, IBM Technical Disclosure Bulletin, Vol. 17, No. 12, S. 3737-3740, Mai 1975 *

Also Published As

Publication number Publication date
AU2936877A (en) 1979-04-12
AU509201B2 (en) 1980-04-24
JPS5350634A (en) 1978-05-09
CA1093214A (en) 1981-01-06
US4124893A (en) 1978-11-07
FR2368090A1 (fr) 1978-05-12
GB1594014A (en) 1981-07-30
FR2368090B1 (de) 1984-12-14
DE2746505C2 (de) 1987-05-21

Similar Documents

Publication Publication Date Title
DE2746505A1 (de) Dv-system mit einer einrichtung zum adressieren in einem festwertspeicher abgelegter mikroprogramme
DE2813128A1 (de) Mikroprogrammspeicher
DE2735814C2 (de) Nach dem Pipelineprinzip arbeitende Datenverarbeitungseinrichtung
DE4035405C2 (de)
DE1774296B2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2417795C2 (de) Datenverarbeitungsanlage
DE2714805A1 (de) Datenverarbeitungssystem
DE2318069A1 (de) Rechnersteuersystem unter verwendung von mikroprogrammierung und statisch/dynamischer erweiterung von steuerfunktionen mittels festverdrahteter logischer matrix
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE2332971C2 (de) Mikroprogrammsteuereinrichtung
DE2539211A1 (de) Zugriffssteuereinheit
DE2744359C2 (de)
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit
DE2951040C2 (de)
DE2458286A1 (de) Datenverarbeitungssystem zum verschieben von datenfeldern mit verschiedenen strukturen
DE2433436A1 (de) Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer
DE2830334C2 (de)
DE1499191B2 (de) Elektronische einrichtung fuer eine datenverarbeitungsanlage
DE2336676B2 (de) Einrichtung zur Modifizierung von Mikroprogrammbefehlen
DE2723706A1 (de) Einrichtung zum adressenvergleich
DE3344340C2 (de) Datenverarbeitungsanordnung zum Durchführen von Mikrobefehlen
DE3121046A1 (de) Arithmetik-logikeinheit mit bit-manipulation
EP0111161B1 (de) Vorrichtung zur Mikrobefehls-Bereitstellung für mindestens zwei unabhängig arbeitende Funktionseinheiten in einem integrierten, mikroprogrammierten elektronischen Baustein und Verfahren zu ihrem Betrieb
DE2744252C2 (de)
DE2235883A1 (de) Datenverarbeitungseinrichtung

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
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