DE2527272B2 - Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge - Google Patents

Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge

Info

Publication number
DE2527272B2
DE2527272B2 DE19752527272 DE2527272A DE2527272B2 DE 2527272 B2 DE2527272 B2 DE 2527272B2 DE 19752527272 DE19752527272 DE 19752527272 DE 2527272 A DE2527272 A DE 2527272A DE 2527272 B2 DE2527272 B2 DE 2527272B2
Authority
DE
Germany
Prior art keywords
microinstruction
processing
decoding
word
memory
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
DE19752527272
Other languages
English (en)
Other versions
DE2527272C3 (de
DE2527272A1 (de
Inventor
Norbert Dipl.-Ing. 8000 Muenchen Haff
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19752527272 priority Critical patent/DE2527272B2/de
Priority to CH525176A priority patent/CH600436A5/xx
Priority to AT403676A priority patent/AT367917B/de
Priority to FR7617771A priority patent/FR2315124A1/fr
Priority to NL7606407A priority patent/NL7606407A/xx
Priority to IT2430676A priority patent/IT1081208B/it
Priority to GB2484276A priority patent/GB1565841A/en
Priority to BE168079A priority patent/BE843132A/xx
Publication of DE2527272A1 publication Critical patent/DE2527272A1/de
Publication of DE2527272B2 publication Critical patent/DE2527272B2/de
Application granted granted Critical
Publication of DE2527272C3 publication Critical patent/DE2527272C3/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

Die Erfindung bezieht sich auf eine Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge gemäß dem Oberbegriff des Hauptanspruchs.
Die Mikroprogrammierung hat als Steuerungsprinzip für digitale Rechenwerke wegen einer Reihe von Vorteilen wachsendes Interesse gefunden. Die Steuersignale für den mikroprogrammierten Prozessor werden aus Bitmustern abgeleitet, die in Mikrobefehlsworten zusammengefaßt sind und in Festwertspeichern oder beschreibbaren Steuerspeichern abgelegt sind.
Wie Husson in »Microprogramming: Principles and Practices«, Prentice Hall 1970, Kapitel 2.8 ausführt, ist ein solcher Mikroprogrammspeicher ein wesentlicher, da meist kostenbestimmender Bestandteil einer Mikroprogrammsteuerung. Er besitzt durch die Anzahl der Mikrobefehlsworte und die der Bitstellen im einzelnen Mikrobefehl zwei Dimensionen. Die benötigte Anzahl von Mikrobefehlen hängt vom Umfang und der Komplexität der mikroprogrammierten Maschinenbefehle, von ihren Formaten, vom Adressierungsmechanismus und von der Leistungsfähigkeit der Unterbrechungsbehandlung einer datenverarbeitenden Anlage ab, zu der der mikroprogrammierte Prozessor als ein wesentlicher Bestandteil gehört.
Die Breite jedes Mikrobefehls bestimmt sich aus dem Umfang des im System möglichen Parallelbetriebes und der Art der Codierung. Ein sehr breit ausgelegter Mikrobefehl ermöglicht außerdem eine größere Anzahl vcn Elementaroperationen in einem einzigen
ίο Verarbeitungszyklus weitgehend parallel zu verarbeiten, so daß sich die Anzahl der benötigten Mikrobefehlsworte für ein einem Maschinenbefehl zugeordnetes Mikroprogramm reduziert.
Ein zweiter Gesichtspunkt ergibt sich aus den durch technologische Unterschiede bedingten Eigenschaft?n verschiedener Mikroprogrammspeicher. Wie oben bereits angedeutet, kommen dafür entweder Festwertspeicher oder beschreibbare Speicher in Betracht. Ein beschreibbarer Mikroprogrammspeicher hat gegenüber einem Festwertspeicher eine Reihe von Vorteilen. So ist ein Datenverarbeitungssystem mit einem beschreibbaren Mikroprogrammspeicher wesentlich besser anpassungsfähig, da sich die Mikroprogramme ändern lassen. Änderungen in der Systemarchitektur bedingen keine oder nur geringe schaltungstechnische Änderungen und Fehler im Programm können ohne schaltungstechnische Änderungen korrigiert werden. Ist das Mikroprogramm jedoch in einem Festwertspeicher niedergelegt, so erfordern solche Korrektu-
jo ren jeweils einen neuen Festwertspeicher.
Leichter realisierbar ist mit einem beschreibbaren Mikroprogrammspeicher ebenfalls sowohl die Emulation, d. h. die Nachbildung fremder Systemeigenschaften durch entsprechende Mikroprogramme und die Diagnose der fest verdrahteten Schaltung über Diagnosenmikroprogramme. In beiden Fällen brauchen in den beschreibbaren Mikroprogrammspeicher lediglich entsprechende Mikroprogramme aus einem äußeren Speicher geladen werden, ein Festwertspeieher müßte derartige Mikroprogramme jedoch ständig enthalten und deshalb eine höhere Speicherkapazität besitzen.
Umgekehrt ist bei einem als Festwertspeicher ausgebildeten Mikroprogrammspeicher ein falsches La-
4r> den von Mikroprogrammen nicht möglich. Außerdem bleiben bei einem Zusammenbruch der Stromversorgung in einem Festwertspeicher die Mikroprogramme erhalten, während ein beschreibbarer Mikroprogrammspeicher, der heute vorzugsweise als Halbleiterspeicher ausgebildet wird, neu geladen werden muß.
Für Speichermedien in Datenverarbeitungsanlagen gilt die Faustregel, daß die Kosten pro Bit um so höher sind, je schneller der Speicher ist. Das gilt auch für
ν, einen beschreibbaren Mikroprogrammspeicher.
Wenn der beschreibbare Mikroprogrammspeicher z. B. mit dem Arbeitsspeicher der Zentraleinheit zusammengelegt wird, dann werden auf zweifache Weise Kosten eingespart: Erstens ist der Arbeitsspeicher ein
im Vergleich zu Mikroprogrammspeichern zwar langsames aber billiges Speichermediumund zweitens wird für den Mikroprogrammspeicher keine eigene Schnittstelle benötigt.
Im optimalen Fall sollte der Maschinenzyklus eines mikroprogrammgesteuerten Prozessors, d. h. die Zykluszeit für die Verarbeitung eines Mikrobefehls, so mit der Zugriffszeit zum Mikroprogrammspeicher abgestimmt sind, daß weder der Prozessor auf den Mi-
kroprogrammspeicher noch dieser auf den Prozessor warten muß.
Wenn der Mikroprogrammspeicher aber wegen erheblicher Kosteneinsparungen mit einem relativ langsamen Arbeitsspeicher zusammengelegt wird, dann ist ί das optimale Verhältnis gestört. In diesem Fall ist es nicht sinnvoll, den Maschinenzyklus derart zu verlängern, daß er dem Mikroprogrammspeicherzugriff angepaßt wird.
Durch andere kostengünstige Maßnahmen kann aber die durch den langsamen Mikroprogrammspeicher beeinträchtigte Prozessorleistung erhöht werden.
So wird in der deutschen Patentanmeldung P 2512270 vorgeschlagen, zwischen dem beschreibbaren Mikroprogrammspeicher und einem Mikrobe- ι τ fehlsregister einen »schnellen« Pufferspeicher geringer Kapazität derart anzuordnen, daß das Mikrobefehlsregister sowohl direkt aus dem Mikroprogrammspeicher als auch indirekt aus dem Pufferspeicher ladbar ist. Sobald wiederholt durchlaufende. Programmschleifen auftreten, können die Mikrobefehle bereits beim zweiten Schleifendurchlauf unmittelbar aus dem Pufferspeicher entnommen werdei, so daß die lange Zugriffszeit zum Mikroprogrammspeicher entfällt. Obwohl diese Maßnahme zu einer Leistungssteigerung des Prozessors beiträgt, muß sich ihre Wirksamkeit auf die Verarbeitung von Mikroprogrammschleifen beschränken.
Eine andere Maßnahme besteht darin, die Datenwege zum beschreibbaren Mikroprogrammspeicher jo doppelt so breit auszulegen wie das Mikrobefehlsformat. Mit einem Zugriff zum Mikroprogrammspeicher können dann zwei aufeinanderfolgende Mikrobefehle adressiert werden, die - teilweise zwischengespeichert - nacheinander in das Mikrobefehlsregister » übertragen werden. Theoretisch könnte damit bereits die Hälfte aller Speicherzugriffe eingespart werden, jedoch wird dieser theoretische Wert nicht erreicht, da bei einer Programmverzweigung oder einem Mikroprogrammsprung der zweite Mikrobefehl eines Speicherzugriffes umsonst bereitgestellt sein kann.
Der Erfindung liegt daher die Aufgabe zugrunde, eine Anordnung er eingangs genannten Art zu schaffen, mit der das Verhältnis zwischen durchschnittlicher Zugriffszeit zum Mikroprogrammspeicher und dem Verarbeitungszyklus, d. h. der Zeit für die Verarbeitung eines Mikrobefehls in der Verarbeitungseinheit weiter verbessert wird. Diese Aufgabe wird erfindungsgemäß durch die im Kennzeichen des Hauptanspruchs beschriebenen Merkmale gelöst. -><>
Wie bereits angedeutet, legt man das Mikrobefehlsformat im allgemeinen derart aus, daß eine gewisse Zahl von Kontrollfeldern bzw. Feldern mit Bitmustern einer sogenannten Hauptfunktion zugeordnet sind. Durch die restlichen Felder von Bitmustern v, werden dann sogenannte Nebenfunktionen definiert, die parallel zu der Hauptfunktion während eines Maschinenzyklus in der Verarbeitungseinheit des Prozessors ausgeführt werden. Bei diesen Nebenfunktionen kann es sich z. B. um Tests handeln, die die Folge- ho adreßbildung für den nächsten Mikrobefehl beeinflussen, Dieses Mikrobefehlsformat, das der schal· tungsmäßigen Ausgestaltung der Verarbeitungseinheit natürlich entsprechen muß, nutzt also eine mögliche Parallelarbeit in der Verarbeitungseinheit b5 des Prozessors aus, um die für die Verarbeitung eines Maschinenbefehls notwendige Anzahl von Mikrobefehlen in dem zugeordneten Mikroprogramm zu verringern.
Die Erfindung geht nun von der Erkenntnis aus, daß immer wieder einzelne Mikrobefehle oder sogar längere oder kürzere Folgen von Mikrobefehlen auftreten, in denen die Felder von Bitmustern für Nebenfunktionen nicht ausgenutzt werden. Diese Redundanz schien bisher unvermeidlich, da man sich der Vorteile einer möglichen Parallelarbeit in der Verarbeitungseinheit nicht begeben wolke.
Mit der erfindungsgemäßen Anordnung zu verarbeitende, sogenannte Doppelmikrobefehle, mit denen es bei einem entsprechenden Aufbau des Mikrobefehlsformats möglich ist, zwei Hauptfunktionen in ein Mikrobefehiswort zu schachteln, bringen aber den Vorteil, beim Lesen nur eines Mikrobefehls zwei Hauptfunktionen zu erhalten, d. h. die Verarbeitungseinheit des Prozessors in zwei aufeinanderfolgenden Verarbeitungszyklen zu beschäftigen. Es wird natürlich der theoretisch mögliche Wert von einer auf die Hälfte reduzierten Anzahl von Zugriffen zum Mikroprograinmspeicher nicht immer erreicht, aber auf jeden Fall tragen solche Mikrobfcishle erheblich zu einer Leistungssteigerung des Prozesso.s bei. Vielfach ist es möglich, eine Nebenfunktion innerhalb eines Mikroprogramms frei wählbar zu plazieren, z. B. wenn eine Testbedingung im Prozessor im Verlauf von zehn Mikrobefehlen nicht geändert wird, kann sie durch Angabe des entsprechenden Tests sowohl im ersten als auch im zehnten Mikrobefehl abgefragt werden. Deshalb hat man es bei der Gestaltung des Mikroprogramms in der Hand, die Voraussetzungen für den Einsatz von Doppelmikrobefehlen noch zu steigern.
Mit der Leistungssteigerung des Prozessors einher geht eine Einsparung an Mikroprogrammspeicherplatz und eine Entlastung der Schnittstelle zum Hauptspeichersystem, nämlich dann, wenn der beschreibbare Mikroprogrammspeicher dort neben dem Arbeitsspeicher untergebracht ist.
Eine Weiterbildung der Erfindung ist im Unteranspruch gekennzeichnet und in der nachfolgenden Beschreibung eines Ausführungsbeispiels näher erläutert. Dieses Ausführungsbeispiel wird anhand der Zeichnung beschrieben. Es zeigt
Fig. 1 das Blockschaltbild eines mikrcprogrammierten Prozessors mit einer Steuereinheit und einer Verarbeitungseinheit, wobei ersterer aus Gründen des funktionellen Zusammenhangs ein beschreibbarer Mikroprogrammspeicher zugeordnet ist,
Fig. 2 schematisch den zeitlichen Ablauf der Verarbeitung von einfachen Mikrobefehlen mit langer Zugriffzeit,
Fig. 3 ein Beispiel für den grundsätzlichen Aufb?u eines Mikrobefehls,
Fig. 4 das entsprechende Beispiel für den Aufbau eines Doppelmikrobefehls, und
Fig. 5 schematich den zeitlichen Ablauf bei der Verarbeitung von Doppelmikrobefehlen.
Das für das Verständnis der Erfindung herangezogene Blockschaltbild eines mikroprogrammgesteuerten Prozessors einer datenverarbeitenden Anlage in Fig, 1 zeigt eine Steuerheit SE und eine Verarbeitungseinheit VE. Wegen des funktionellen Zusammenhanges ist innerhalb der Steuereinheit SE ein beschreibbarer Mikroprogrammspeicher (Writable Control Memory) WCM angegeben. Ein in diesem Mikroprogrammspeicher niedergelegtes Mikrobefehlswort ist über den Inhalt eines Adreßregisters AR
adressierbar.
Die llnformationsausgänge des Mikroprogrammspeicheis WCM sind, wie durch einen stark ausgezogenen Oatenweg angedeutet ist, parallel mit den Eingängen eines Mikrobefehlsregisters MBR verbunden. An dieses Register ist eine Decodiereinheit DEC zum Umwandeln des jeweiligen Informationsinhalts des Mikrobefehlsregisters MBR in Steuersignale angeschlossen, die über Steuersignalleitungen ST den einzelnen Funktionseinheiten der Verarbeitungseinheit VE zugeführt werden.
In dieser Verarbeitungseinheit VE sind durch Pfeile rein schematisch Datenwege D/l und DIO angegeben, die den Datenfluß für zu verarbeitende bzw. bereits verarbeitete Daten andeuten. Dafür notwendige Steuerleitungen zum Adressieren angeforderter bzw. abzugebender Daten sind mit ADR bezeichnet.
Um in einem Mikroprogramm die Adresse des folgenden Mikrobefehls zu bilden, ist ein weiteres Schaltnetz FMB vorgesehen, das zwischen dem Mikrobefehlsregister MBR und dem Adreßregister AR angeordnet ist.
Über diese allen mikroprogrammgesteuerten Prozessoren gemeinsame Grundstrukturen hinausgehend, enthält die dargestellte Steuereinheit SE neben der bitparallelen Verbindung der Informationsausgänge des Mikroprogrammspeichers WCM mit dem Mikrobefehlsregister MBR einen weiteren indirekten Datenweg über einen aus einem »schnellen« Registersatz gebildeten Pufferspeicher MC. Dieser Pufferspeicher ist über die niederwertigen Bitstellen des Adreßregisters AR adressierbar.
Die Informationsausgänge des Pufferspeichers MC sind ihrerseits parallel zu den Informationsausgängen des Mikroprogrammspeichers WCM mit den Eingängen des Mikrobefehlsregisters MBR verbunden. Im Mikrobefehlsregister MBR können daher Mikrobefehle entweder direkt aus dem Mikroprogrammspeicher WCM oder aus dem Pufferspeicher MC zum Decodieren in der Decodiereinheit DEC bereitgestellt werden.
Der durch einen Mikrobefehl definierte funktioneile Ablauf eines Mikrobefehls eines Verarbeitungszyklus in einem solchen mikroprogrammgesteuerten Prozessor ist dem Fachmann geläufig, so daß sich hier eine weitere Darstellung erübrigt.
Anhand von Fig. 2 soll vielmehr in diesem Zusammenhang der zeitliche Ablauf eines Mikrobefehls nähererläutert werden. Die Gesamtzeit für die Bearbeitung eines Mikrobefehls setzt sich bei sequentieller Abarbeitung aus den folgenden zwei Größen zusammen:
- Zugreifen zum Mikroprogrammspeicher WCM mit Einschreiben des adressierten Mikrobefehls in das Mikrobefehlsregister MBR und
- Ablauf eines Verarbeitungszyklus, bestehend aus: Decodieren des Inhalts des Mikrobefehlsregisters MBR in der Decodiereinheit DEC; Verknüpfen der vom Mikrobefehl adressierten Registerinhalte in der Verarbeitungseinheit VE und Bilden der Adresse des nächsten Mikrobefehls.
Dies ist in Fig. 2 in einem zeitlichen Ablaufschema folgendermaßen dargestellt: Mit 1 ist jeweils ein Verarbeitungszyklus bezeichnet, in dessen Ablauf zu einem Zeitpunkt 2 die Adresse für den nächsten Zugriff zum beschreibbaren Mikroprogrammspeicher WCM feststeht. Die folgende Zeitspanne 3 wird für den Zugriff zum Mikroprogrammspeicher WCM und für das
Einschreiben des adressierten Mikrobefehls in das Mikrobefehlsregister MBR verbraucht. Daran schließt sich der nächste Verarbeitungszyklus 1 an. Zwischen zwei aufeinanderfolgenden Verarbeitungszyklen 1 vergeht also eine zweite Zeitspanne 4, die mit der Wartezeit des Prozessors auf die Bereitstellung des nächsten Mikrobefehls identisch ist.
Die grundsätzliche Struktur eines Mikrobefehls ergibt sich aus dem in Fig. 3dargestellten Beispieleines Mikrobefehlsformats. In dem gewählten Beispiel ist für das Mikrobefehlsformat eine Breite von 32 Bitstellen angenommen und durch die Zahlenangaben 0 bzw. 31 am unteren Rand des Blockes angedeutet. In dem Block selbst ist eine Reihe von Feldern bezeichnet, die eine unterschiedliche Anzahl von Bitstellen umfassen, wie aus den in Klammern gesetzten Zahlenangaben über den Feldern der Bitmuster zu entnehmen ist.
Das erste Bitmusterfeld GR mit drei Bitstellen kennzeichnet jeweils eine von mehreren Gruppen, der der betreffende Mikrobefehl zuzuordnen ist. Auf diese Weise lassen sich z. B. arithmetische und logische Wortbefehle von Speicher- oder Verschiebebefehlen unterscheiden.
Das zweite, vier Bitstellen umfassende Bitmusterfcld F bezeichnet die Art der Hauptfunktion des Mikrobefehls, d. h. zum Beispiel einen bestimmten Mikrobefehl aus der Gruppe der arithmetischen und logischen Wortbefehle, z. B. also eine UND-Funktion.
Das dritte und vierte, jeweils fünf Bitstellen umfassende Bitmusterfeld ADRl bzw. ADRl enthält die Adresse des ersten bzw. des zweiten Mikrobefehlsoperanden. Mit den drei letztgenannten Bitmusterfeldern ist also eindeutig eine bestimmte Hauptfunktion des Mikrobefehls festgelegt.
Die restlichen 15 Bitstellen des Mikrobefehlsformats enthalten weitere, hier nicht mehr im einzelnen angegebene Bitmusterfelder, die bestimmte Nebenfunktionen NF des Mikrobefehls definieren. Solche Neben- oder Sonderfunktionen können sich auf bestimmte Tests, die Angabe von Direktoperanden, die Angabe von Sprungfclgeadressen usw. beziehen. Wesentlich ist dabei, daß der Verarbeitungszyklus durch die Hauptfunktion bestimmt wird und die Nebenfunktionen parallel dazu ausgeführt werden.
Nun kommt es immer wieder vor, daß in einem Mikrobefehl keine sinnvolle Nebenfunktion definiert werden kann. Da das Mikrobefehlsformat aber allgemein festgelegt ist, werden in einem solchen Fall die 15 Bitstellen für Nebenfunktionen nicht verwertet. Diese Tatsache läßt sich jedoch anderweitig ausnutzen, wie Fig. 4 zeigt. Dort ist ein Mikrobefehlsformat angegeben, das ebenso breit ist, wie das anhand der Fig. 3 geschilderte allgemeine Mikrobefehlsformat. Wie ein Vergleich mit Fig. 3 zeigt, enthält dieses jedoch zwei Hauptfunktionen mit je 14 Bitstellen in Bitmusterfeldern F, ADRl und ADR2.
Wenn darüber hinaus für das Gruppenkennzeichen GR nur zwei Bitstellen benötigt werden, die hier in einem bestimmten Zustand die Gruppe von Doppelmikrobefehlen mit zwei Hauptfunktionen kennzeichnen, so bleiben von den 32 Bitstellen des Formats noch 2 Bitstellen leer. Je eine dieser Bitstellen G wird einer der beiden Hauptfunktionen zugeordnet und ermöglicht eine Unterscheidung zwischen zwei Gruppen von Doppelmikrobefehlen, d. h. es lassen sich z. B. arithmetische und logische Wortbefehle von arithmeti-
sehen und logischen Bytebefehlen unterscheiden.
Wie ein derartiger Mikrobefehl verarbeitet werden soll, ist in Fig. 1 schematisch angedeutet. Der wie alle anderen Mikrobefeiile aus dem beschreibbaren Mikroprogrammspeicher WCM gelesene und im Mikrobcfehlsregister MRR bereitgestellte Mikrobefehl wird bei der Decodierung in de;r Decodiereinheit DEC aufgrund jeines Gruppenkennzeichens GR als Doppelmikrobefehl erkannt. Dann werden nur seine Bitstellen 0 bis 16 im folgenden Verarbeitungszyklus ausgewertet, ti. h. die erste Ilauptfunktion verarbeitet. Danach weiden die restlichen, bisher nicht ausgewerteten Bitsiellen 17 bis 31, wie durch ti ic gestrichelte Linie schematisch angedeutet, an die Stelle der ersten Ilauptfiinktion im Mikrobefehlsregister MHR ν er1 -(.hoben. Die /weite Hauptfunktion kann dann an der richtigen Stelle im Mikmbcfehlsregister MIiR stehend im nächsten Maschmcn/yklus unmittelbar
verarbeitet werden und benotigt keine eigene Decodierlogik. Der schaltiingstechnische Aufwand für die Verarbeitung von Doppelmikrobelehlcn ist also denkbar gering.
Das zugehörige zeitliche Verarbeitungsschema geht aus Fig. 5 hervor. Dort sind identische Größen in gleicher Weise wie in Fig, 2 bezeichnet. Zwischen der Verarbeitung zweier Hauptfunktionen in einem Doppe I mik robe fehl tritt nun im Unterschied zu der Darstellung gegenüber Fig. 2 lediglich eine kurze Lücke zwischen zwei Maschinenzyklen 1 auf, die mit 4' bezeichnet ist. Diese ist im Vergleich zu der langen War tezeit der Verarbeitungseinheit VE bei der Verarbeitung von normalen Mikrobefehlen vernachlässigbar. hi daß sieh ili·· durchschnittliche Waite/eit des Prozessors bei de Verarbeitung einer Folge von Mikrobefehlen halbiert.
Solche Folgen lassen sich im Ablauf eines Mikroprogramms dadurch verlängern, daß man in diesem Programmablauf benötigte Nel>eiifimktionen an (.las Fiide oder ilen Anfang dieser Folge /u verlegen ver-... ι.. \\i , .„.,„ i„,..,..iu .ι;., ν...-,.,...,,!,.,,., .„>., iv,„
pelniikrobefehlen anstrebt, läßt sich - wie die Praxis gc/.eigt hat - oft eine ganze Folge solcher Befehle mit den beschriebenen Vorteilen entwickeln.
ilicr/u 2 Mlait Zeichnungen

Claims (2)

Patentansprüche:
1. Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Lösung, welches mindestens zwei, voneinander verschiedene Steuerfunktionen betreffende Teilbefehlswörter umfaßt, mit einem Mikrobefehlsregister, in welches die Mikrobefehlswörter aus einem Mikroprogrammspeicher nacheinander übertragen werden, mit einem Decodierer zum Decodieren des jeweils vom Mikrobefehlsregister empfangenen Befehlswortes und mit einer an den Decodierer angeschlossenen Verarbeitungseinheit, dadurch gekennzeichnet, daß der Decodierer (DEC) abhängig von einem Zustand eines an vorgegebener Stelle des Mikrobefehlswortes befindlichen Kennzeichens (GR) eine erste Signalgröße abgibt, welches das Decodieren und Abarbeiten aller im Mikrobefehlswort vorhandenen Teübefehlswörter innerhalb desselben, momentan ablaufenden Verarbeitungszyklus auslöst, und daß der Decodierer abhängig von einem weiteren Zustand des genannten Kennzeichens eine zweite Signalgröße abgibt, welche innerhalb des momentan ablaufenden Verarbeitungszyklus das Decodieren und Abarbeiten nur eines Teils des Mikrobefehlswortes und im darauffolgenden Arbeitszyklus das Decodieren und Abarbeiten des verbleibenden Teils des Mikrobefehlswortes steuert.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die vom Decodierer (DEC) abgegebene zweite Signalgröße zwischen dem Abarbeiten des eines Teils des MuoObefehlswortes im momentan ablaufenden Verarbeitungszyklus und dem Decodieren des verbleibet den Teils des Mikrobefehlswortes ein Umladen dieses verbliebenen Teils des Mikrobefehlswortes im Mikrobefehlsregister (MBR) an die entsprechenden Speicherstellen des ersten Teils des Mikrobefehlswortes steuert.
DE19752527272 1975-06-19 1975-06-19 Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge Granted DE2527272B2 (de)

Priority Applications (8)

Application Number Priority Date Filing Date Title
DE19752527272 DE2527272B2 (de) 1975-06-19 1975-06-19 Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge
CH525176A CH600436A5 (de) 1975-06-19 1976-04-27
AT403676A AT367917B (de) 1975-06-19 1976-06-02 Anordnung zum decodieren und abarbeiten eines in einem mikroprogrammspeicher gespeicherten mikorbefehlswortes konstanter laenge
FR7617771A FR2315124A1 (fr) 1975-06-19 1976-06-11 Procede pour commander un processeur microprogramme
NL7606407A NL7606407A (nl) 1975-06-19 1976-06-14 Werkwijze voor het besturen van een microgepro- grammeerde centrale verwerkingseenheid.
IT2430676A IT1081208B (it) 1975-06-19 1976-06-15 Dispositivo per comandare un elaboratore microprogrammato
GB2484276A GB1565841A (en) 1975-06-19 1976-06-16 Microprogrammable computer system
BE168079A BE843132A (fr) 1975-06-19 1976-06-18 Procede pour commander un processeur microgramme

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19752527272 DE2527272B2 (de) 1975-06-19 1975-06-19 Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge

Publications (3)

Publication Number Publication Date
DE2527272A1 DE2527272A1 (de) 1976-12-23
DE2527272B2 true DE2527272B2 (de) 1979-10-25
DE2527272C3 DE2527272C3 (de) 1980-07-10

Family

ID=5949414

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19752527272 Granted DE2527272B2 (de) 1975-06-19 1975-06-19 Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge

Country Status (8)

Country Link
AT (1) AT367917B (de)
BE (1) BE843132A (de)
CH (1) CH600436A5 (de)
DE (1) DE2527272B2 (de)
FR (1) FR2315124A1 (de)
GB (1) GB1565841A (de)
IT (1) IT1081208B (de)
NL (1) NL7606407A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3009121C2 (de) * 1980-03-10 1982-02-18 Siemens AG, 1000 Berlin und 8000 München Mikroprogramm-Steuereinrichtung

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2409551A1 (fr) * 1977-11-21 1979-06-15 Cii Honeywell Bull Coupleur rapide de ligne de transmission ou peripheriques d'ordinateur utilisant une structure particuliere de microinstruction

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3753236A (en) * 1972-03-31 1973-08-14 Honeywell Inf Systems Microprogrammable peripheral controller
DE2512270A1 (de) * 1975-03-20 1976-09-23 Siemens Ag Steuereinheit eines durch mikroprogramme steuerbaren prozessors einer datenverarbeitungsanlage und verfahren zu ihrem betrieb

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3009121C2 (de) * 1980-03-10 1982-02-18 Siemens AG, 1000 Berlin und 8000 München Mikroprogramm-Steuereinrichtung

Also Published As

Publication number Publication date
FR2315124B1 (de) 1981-09-25
CH600436A5 (de) 1978-06-15
DE2527272C3 (de) 1980-07-10
AT367917B (de) 1982-08-10
ATA403676A (de) 1981-12-15
DE2527272A1 (de) 1976-12-23
NL7606407A (nl) 1976-12-21
BE843132A (fr) 1976-12-20
GB1565841A (en) 1980-04-23
IT1081208B (it) 1985-05-16
FR2315124A1 (fr) 1977-01-14

Similar Documents

Publication Publication Date Title
DE1774296C2 (de) Restruktuierbare Steuereinheit für elektronische Digitalrechner
DE2350225C2 (de)
DE4019135C2 (de) Serieller Speicher auf RAM-Basis mit parallelem Voraus-Lesen und Verfahren zum Speichern von Datenelementen in eine serielle Speichervorrichtung
EP0097725B1 (de) Einrichtung im Befehlswerk eines mikroprogrammgesteuerten Prozessors zur direkten hardwaregesteuerten Ausführung bestimmter Instruktionen
DE2417795C2 (de) Datenverarbeitungsanlage
DE2130299B2 (de) Eingabe-/Ausgabekanal für eine Datenverarb eitungsanlage
DE2719635A1 (de) Anordnung fuer eine erweiterung einer mikroprogrammsteuerung einer datenverarbeitungsanlage
DE3688232T2 (de) Datenverarbeitungssystem.
DE2746505C2 (de)
DE2226314A1 (de) Verfahren und steuereinrichtung zur steuerung einer programmfolge
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE2717658A1 (de) Anordnung zur ansteuerung eines mikroprogrammspeichers
DE2332971C2 (de) Mikroprogrammsteuereinrichtung
DE3114921C2 (de) Mikroprogramm-Speicheranordnung
DE2718110A1 (de) Datenverarbeitungseinheit
EP0010185A1 (de) Virtuell-Adressiervorrichtung für einen Computer
DE2117581C3 (de) Einrichtung zur Adressenprüfung
EP0134831A1 (de) Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung
DE2426874A1 (de) Verfahren und schaltungsanordnung zur bestimmung der adressenart eines befehls
DE69222743T2 (de) Speichereinrichtung und Verfahren zur Verwendung in einer Datenverarbeitungsanordnung
DE2744359C2 (de)
DE3650642T2 (de) Speichermittel mit Mehrwortauslesen und Schreiben
DE2418921C2 (de) Vorrichtung zum Speichern von Mikroprogrammen in einer Datenverarbeitungsanlage
DE2759120C2 (de)
DE2527272B2 (de) Anordnung zum Decodieren und Abarbeiten eines Mikrobefehlswortes konstanter Länge

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee