DE2622974A1 - Mikroprogrammierbares steuerwerk - Google Patents
Mikroprogrammierbares steuerwerkInfo
- Publication number
- DE2622974A1 DE2622974A1 DE19762622974 DE2622974A DE2622974A1 DE 2622974 A1 DE2622974 A1 DE 2622974A1 DE 19762622974 DE19762622974 DE 19762622974 DE 2622974 A DE2622974 A DE 2622974A DE 2622974 A1 DE2622974 A1 DE 2622974A1
- Authority
- DE
- Germany
- Prior art keywords
- command
- binary
- control unit
- command word
- flip
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/226—Microinstruction 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)
- Read Only Memory (AREA)
Description
SIEMENS AKTIENGESELLSCHAFT L Unser Zeichen Berlin und München VPA TB P 2 0 8 2 BRD
Die Erfindung bezieht sich auf ein mikroprogrammierbares Steuerwerk,
bei dem ein aus einer Mehrzahl von Befehlswörtern bestehendes Mikroprogramm in einem Speicher"gespeichert ist, bei dem die Adressen
der Befehlswörter in einem mit dem Speicher verbundenen Adreßregister
gespeichert sind, bei dem mittels Decodierer Steuersignale für ein zu steuerndes Schaltwerk erzeugt werden und bei dem mittels
Multiplexer Bedingungen in dem Schaltwerk abfragbar sind.
Es ist bereits allgemein bekannt, Steueraufgaben in Schaltwerken 10- mit Hilfe von Mikroprozessoren durchzuführen. Derartige Mikroprozessoren
stellen verhältnismäßig leistungsfähige Steuerrechner
dar, die in einem oder mehreren integrierten Bausteinen untergebracht
sind. Bedingt durch die verwendete Technologie, im allgemeinen MOS-Technologie, weisen diese Mikroprozessoren jedoch lange
Befehlszeiten auf. Sie eignen sich damit nicht für Steueraufgaben,
bei deinen eine geringe Befehlsfolgezeit erforderlich ist.
Eine Analyse der von einem mikroprogrammgesteuerten Schaltwerk zu übernehmenden Aufgaben zeigt, daß es nicht in allen Fällen notwendig
ist, daß das Steuerwerk auch arithmetische Funktionen, wie beispielsweise Addition oder Subtraktion ausführt, wie es die gegenwärtig
verfügbaren Mikroprozessoren mit Hilfe eines weit gefächerten Befehlssatzes vermögen. In den meisten Fällen kann jedoch
nicht auf eine Abfrage von veränderbaren Zuständen in dem zu steuernden Schaltwerk und auf eine Änderung der Zustände des zu
steuernden Schaltwerkes in Abhängigkeit von abgefragten Bedingungen verzichtet werden. Darüber hinaus sind gegebenenfalls logische
Verknüpfungen der abgefragten Bedingungen erforderlich.
VPA 76 E 2035
Ret 13 Ram / 19.5.1976 709 847/0581
Der Erfindung liegt daher die Aufgabe zugrunde ein mikroprogrammierbares
Steuerwerk anzugeben, mit dem diese letztgenannten Funktionen durchführbar sind und das eine im Vergleich zu Mikroprozessoren
geringere Zykluszeit aufweist.
5'
5'
Erfindungsgemäß wird die Aufgabe bei dem mikroprogrammierbaren Steuerwerk der eingangs genannten Art dadurch gelöst, daß eine
Steuerstufe vorgesehen ist, der die Befehlswörter zugeführt werden
und die jeweils eine Mehrzahl von Binärzeichen eines Befehls-Wortes
zu den Decodierern durchschaltet, wenn im Befehlswort ein vorgegebenes erstes Binärzeichen einen ersten Binärwert hat, die
jeweils eine Mehrzahl von Binärzeichen des Befehlswortes zu Auswahleingängen der Multiplexer durchschaltet, wenn das vorgegebene
erste Binärzeichen einen zweiten Binärwert hat und die das Befehlswort
als Adresse zum Adreßregister durchschaltet, wenn ein vorgegebenes
zweites Binärzeichen im vorhergehenden Befehlswort einen
festgelegten Binärwert hat.
Das mikroprogrammierbare Steuerwerk gemäß der Erfindung hat gegenüber
den bekannten Mikroprozessoren den Vorteil, daß es eine besonders einfache Struktur aufweist und universelle Anschlußmöglichkeiten
an das zu steuernde Schaltwerk hat. Das Steuerwerk kann in Form integrierter Bausteine kostengünstig hergestellt werden.
Die Elemente des Mikroprogramms sind Befehle mit sehr einfacher Struktur. Damit wird die Programmierung des Steuerwerkes sehr einfach.
Umfangreiche Steuerungsaufgaben können beispielsweise durch mehrere mikroprpgraitimierte Steuerwerke durchgeführt werden, die
weitgehend selbständig arbeiten und durch ein weiteres mikroprogrammiertes
Steuerwerk oder beispielsweise einen Mikroprozessor, der die übergeordnete Steuerung des gesamten Funktionsablaufs übernimmt,
gesteuert werden. Die Steuerwerke arbeiten somit in einer Hierarchie, bei der die schnellen Steuerwerke mit ihrem begrenzten
Wirkungsbereich nur dort eingesetzt werden, wo sie unbedingt erforderlich sind. Die übrigen Funktionen und insbesondere die Koordinierung
wird von dem langsamen, übergeordneten Steuerwerk durchgeführt. Auf diese Weise werden für das gesamte Steuersystem günstige
Kosten erreicht.
WA76E2035 709847/0581
- Λ 2672974-
Falls in dem Schaltwerk nicht einzelne Steuersignale, sondern gleichzeitig
eine Mehrzahl von Steuersignalen erzeugt werden soll oder falls einzelne Zähler oder Register in dem Schaltwerk geladen werden
sollen ist es vorteilhaft, wenn die Steuerstufe derart ausgebildet ist, daß sie ein Befehlswort als Konstante zum Schaltwerk
durchschaltet, wenn im vorhergehenden Befehlswort das vorgegebene erste Binärzeichen den ersten Binärwert und eine Mehrzahl von Binärzeichen
festgelegte Binärwerte haben.
Falls eine Mehrzahl von Konstanten zu:? Schaltwerk durch geschaltet
werden soll ist es zweckmäßig, wenn die Steuerstufe derart ausgebildet ist, daß sie eine Mehrzahl von die Konstanten darstellenden
Befehlswörtern, nach Auslösung durch ein vorhergehendes Befehlswort,
zeitlich nacheinander zum Schaltwerk überträgt.
Um mit Hilfe des mikroprogrammierbaren Steuerwerkes auch logische Verknüpfungen von abgefragten Bedingungen durchführen zu können
ist es von Vorteil, wenn die Steuerstufe Schaltglieder enthält, mit denen sich aus der zeitlichen Aufeinanderfolge einer Mehrzahl
von Befehlswörtern ergebende logische Verknüpfungen durchführbar sind.
Eine ODER-Verknupfur.g der abgefragten Bedingungen wird durchgeführt,
wenn die Steuerstufe ein erstes Flipflop enthält, das jeweils gesetzt wird, wenn mindestens eine von mehreren nacheinander abgefragten
Bedingungen erfüllt ist und das zurückgesetzt wird, wenn ein Befehlswort folgt, das kein Abfragen von Bedingungen auslöst.
Eine UND-Verknüpfung der abgefragten Bedingungen wird durchgeführt,
wenn die Steuerstufe ein zweites Flipflop enthält, das gesetzt wird, wenn mindestens eine von mehreren nacheinander abgefragten
Bedingungen nicht erfüllt ist und das zurückgesetzt wird, wenn " ein Befehlswort folgt, das kein Abfragen von Bedingungen auslöst.
Zur Ansteuerung des zweiten Flipflops ist es zweckmäßig, wenn dem zweiten Flipflop ein weiteres Flipflop vorgeschaltet ist, das jeweils
zu Beginn des Befehls, mit dem Bedingungen abgefragt werden, gesetzt und das immer dann zurückgesetzt wird, wenn die Bedingung
VPA 76 E 2035
709847/0581
-A 2672974
erfüllt war und das zu einem späteren Zeitpunkt des Befehls, falls
es zu diesem Zeitpunkt noch nicht.zurückgesetzt war, das zweite Flipflop setzt,
Eine Umschaltung zwischen einer ODER-Verknüpfung und einer UND-Verknüpfung
erfolgt zweckmäßigerweise dadurch, daß ein drittes Flipflop vorgesehen ist, das durch an die Decodierer übertragene
Befehlswörter gesetzt und zurückgesetzt wird und das eine ODER- bzw. UND-Verknüpfung auslöst, wenn es gesetzt bzw. zurückgesetzt
ist.
Da die Befehlswörter in Abhängigkeit von vorangehenden Befehlswörtern
ihre Bedeutung verändern ist es zweckmäßig, wenn die Steuerstufe Speicherglieder enthält, denen die ersten und zweiten vorgegebenen
Binärzeichen des Befehlswortes zugeführt werden und die jeweils das erste und das zweite vorgegebene Binärzeichen des jeweils
vorangehenden Befehlswortes speichern.
Der Aufwand an Decodierern im Schaltwerk wird vermindert, wenn die Steuerstufe in einem Vordecodierer einen Decodierer enthält,
dem jeweils vorgegebene Binärzeichen des Befehlswortes zugeführt
werden und der an die Decodierer im Schaltwerk Auswahlimpulse abgibt.
In ähnlicher Weise wird der Aufwand an Multiplexern erheblich vermindert,
wenn die Steuerstufe in einem Vordecodierer einen Decodierer enthält, dem jeweils vorgegebene Binärzeichen des Befehlswortes
zugeführt werden und der an jeweils einen Auswahleingang der Multiplexer im Schaltwerk Auswahlimpulse abgibt.
Im folgenden wird ein Ausführungsbeispiel des mikroprogrammierbaren
Steuerwerkes gemäß der Erfindung anhand von Zeichnungen beschrieben.
Es zeigen:
Es zeigen:
Fig. 1 ein Blockschaltbild des mikroprograiranierbaren Steuerwerkes,
Fig. 2 eine schematische Darstellung von Befehlswörtern, Fig. 3 ein Schaltbild einer Steuerstufe des mikroprogrammierbaren
Steuerwerkes.
VPA 76 E 2035 ' 709847/0S81
Das in Fig. 1 dargestellte mikroprogrammierbare Steuerwerk enthält
einen Taktgeber TG, der Taktimpulse T vorgegebener Folgefrequenz an ein Adreßregister AR, an eine Steuerstufe ST und an ein zu
steuernden Schaltwerk SW abgibt. Das Adreßregister AR gibt Adreß-Wörter
AD an einen Speicher MPS ab, in dem ein aus einer Mehrzahl von Befehlswörtern gebildetes Mikroprogramm gespeichert ist. Das
Mikroprogramm besteht beispielsweise aus 256 Befehlswörtern, die wiederum jeweils beispielsweise aus acht Binärzeichen und gegebenenfalls
weiteren Binärzeichen zur Fehlersicherung bestehen. Die
in Abhängigkeit von den Adreßwörtern AD aus dem Speicher MPS gelesenen
Befehlswörter BW werden der Steuerstufe ST, dem zu steuernden Schaltwerk SW oder dem Adreßregister AR zugeführt.
Das Schaltwerk SW enthält eine Mehrzahl von Multiplexern M1 bis Mn, deren Ausgänge über ein ODER-Glied V3 zusammengefaßt werden.
Diese Multiplexer M1 bis Mn dienen der Abfrage von Zuständen in dem Schaltwerk SW, um in Abhängigkeit davon Steuervorgänge im
Schaltwerk SW durchzuführen. Zur Durchführung dieser Steuervorgänge enthält das Schaltwerk SW eine Mehrzahl von Decodierern D1 bis
Dn und gegebenenfalls Register und/oder Zähler, die in einer tibernahmeeinheit
UE vorgesehen sind.
Die Steuerstufe ST enthält eine Schaltstufe SS und einen Vordecodierer
VD. Der Schaltstufe SS werden zwei Binärzeichen des Befehls-
°5 wortes BW zugeführt. Diese Binärzeichen geben an, ob es sich bei .
dem entsprechenden Befehlswort um einen Setz/Rücksetzbefehl, um einen Abfragebefehl oder bei dem folgenden Befehlswort um eine
Adresse oder Konstante handelt. An dem Vordecodierer VD liegen drei Binärzeichen des Befehlswortes BW an. Mit Hilfe dieser Binärzeichen
erfolgt eine Vorauswahl der Multiplexer M1 bis Mn und der Decodierer D1 bis Dn in dem Schaltwerk SW. Die restlichen Binärzeichen
v/erden den Multiplexern M1 bis Mn und den Decodierern D1 bis Dn im Schaltwerk SW unmittelbar zugeführt.
Die in Fig. 2 dargestellten Befehlswörter werden jeweils aus acht Binärzeichen B1 bis B8 gebildet. In Abhängigkeit von zwei Binärzeichen
B1 und B2 werden drei Arten von Befehlswörtern unterschieden.
76 ε 2035 709847/0S81
Ein mit der Bezeichnung S versehenes Befehlswort dient dazu, in
dem Schaltwerk SW Setz- oder Rücksetzimpulse zu erzeugen, durch die beispielsweise ein Flipflop gesetzt, zurückgesetzt, ein Zähler
um eine Zähleinheit erhöht oder ein Register geladen wird. Das Binärzeichen B1 hat bei einem derartigen S-Befehl jeweils den Binärwert
0. Wenn das Binärzeichen B2 den Binärwert 1 hat, wird das
nachfolgende Befehlswort, unabhängig vom Binärwert des Binärzeichens B1 als Adresse für das Adreßregister AR interpretiert. Auf
diese Weise kann nach einem S-Befehl ein unbedingter Sprungbefehl durchgeführt werden. Die mit SR bezeichneten Binärzeichen B3 bis
B8 enthalten die Codierung für die Auswahl des im Schaltwerk SW zu erzeugenden Steuersignals. Die Binärzeichen B3 bis B5 können
dabei, wie in Fig. 1 angegeben, dem Vordecodierer VD zugeführt werden, der beispielsweise jeweils einen von acht Decodierern auswählt
und die Binärzeichen B6 bis B8 können den Decodierern D1 bis Dn direkt zugeführt werden und sie geben an, welcher von jeweils
acht Ausgängen aktiviert werden soll. Die vom Vordecodierer VD zu den Decodierern führenden Auswahlleitungen können eine
Doppelfunktion haben, nämlich die Auswahl des Decodierers und die übertragung eines Impulses, der an dem jeweils ausgewählten Ausgang
des Decodierers kurzzeitig abgegeben wird.
Das mit der Bezeichnung C versehene Befehlswort dient zur Abfrage von Zuständen oder Bedingungen im Schaltwerk SW. Das Binärzeichen
B1 hat in diesem Fall den Binärwert 1. Das Binärzeichen B2 hat
die gleiche Bedeutung wie bei dem S-Befehl. Die mit B bezeichneten Binärzeichen B3 bis B8 enthalten die Codierung für die Auswahl
des abzufragenden Signals in dem Schaltwerk SW. In ähnlicher Weise wie beim S-Befehl können die Binärzeichen B3 bis B5 dem Vordecodierer
VD zugeführt werden, der beispielsweise einen von acht Multiplexern im Schaltwerk SW auswählt. Die Binärzeichen B6 bis
B8 werden dann jeweils den Multiplexern M1 bis Mn unmittelbar zu-' geführt und es wird jeweils ein Eingang eines Multiplexers für
die Abfrage eines Signals ausgewählt. Wenn das abgefragte Signal einen vorgegebenen Binärwert, beispielsweise den Binärwert 0 hat,
so sei die abgefragte Bedingung als "nicht erfüllt" definiert. Dies hat zur Folge, daß mit dem nächstfolgenden Befehlswort die
diesem Befehl zugeordnete Funktion nicht durchgeführt wird. Wenn VPA 76 E 2035 „ .A_Λ ,
709847/0581
die Bedingung "erfüllt" ist, d.h., wenn das ausgewählte Signal
den Binärwert 1 hat, so wird die dem nächstfolgenden Befehlswort zugeordnete Funktion wirksam.
Wenn zwei oder mehrere C-Befehle aufeinanderfolgen, v/erden die
einzelnen Bedinguagen durch UND- oder ODER-Verknüpfungen verbunden. Die in nachfolgenden Operationen wirksame Bedingung ist dann
das Ergebnis der Verknüpfung der Teilbedingungen. Nach einem C-Befehl oder einem S-Befehl wird der Inhalt des Adreßregisters AR
um eine Zähleinheit erhöht.·
Das mit der Bezeichnung E versehene Befehlswort stellt in Abhängigkeit
vom vorangehenden Befehlswort entweder eine Adresse für das Adreßregister AR oder eine achtstellige Konstante dar. Als Adresse
oder Konstante stehen dabei die mit K/ADR bezeichneten Binärzeichen
B1 bis B8 des Befehlswortes zur Verfügung.
Wenn mit Hilfe eines vorangegangenen S-Befehls eine übernahmeeinheit
UE aktiviert wurde, so wird der Ε-Befehl als Konstante interpretiert.
Es ist dabei möglich, mehrere Konstanten zeitlich unmittelbar nacheinander zum Schaltwerk SW zu übertragen. Diese Befehlswörter
können beispielsweise zum Voreinstellen eines Zählers verwendet werden oder in ein Register eingespeichert werden.
n5 Wenn in einem vorangehenden S- oder C-Befehl das mit der Bezeichnung
A versehene Binärzeichen B2 den Binärwert 1 hat, wird das Befehlswort, das den Ε-Befehl bildet, als Adresse für das Adreßregister
AR interpretiert. Damit wird ein Mikroprogrammsprung ausgeführt, wie er beispielsweise in einer Programmverzweigung erforderlieh
ist. Das Einspeichern der Adresse in das Adreßregister, d.h. der Programmsprung findet statt, wenn dem Ε-Befehl ein S-Befehl
vorangeht. Auf diese Weise wird ein unbedingter Programm-• sprung durchgeführt. Außerdem findet ein bedingter Programmsprung
statt, wenn dem Ε-Befehl ein C-Befehl vorangeht und die dort abgefragte Bedingung erfüllt war. Wenn eine dieser Voraussetzungen
nicht erfüllt ist, so wird der Inhalt des Adreßregisters um 1 erhöht und es findet kein Programmsprung statt.
VPA 76 E 2035 709847/0S81
7622974
Wenn, wie bereits angegeben, im Mikroprogramm zwei oder mehrere
C-Befehle aufeinanderfolgen, werden die Ergebnisse der einzelnen abgefragten Bedingungen logisch miteinander verknüpft. Das Verknüpfungsergebnis
nach dem letzten C-Befehl wird in den nachfolgenden Operationen wirksam. Als Verknüpfungsoperationen sind die
UND- und die ODER-Verknüpfung vorgesehen. Die Umschaltung zwischen einer UND- und einer ODER-Verknüpfung wird mit- Hilfe eines S-Befehls
voreingestellt. Durch derartige Verknüpfungen von aufeinanderfolgenden Bedingungsabfragen werden wesentliche Einsparungen
an Befehlsworten erreicht.
Für die mikroprogrammierbare Behandlung von Sonderfunktionen ist
vorgesehen, daß das Mikroprogramm unterbrechbar ist. Die Unterbrechung erfolgt auf einfache Weise durch Zurücksetzen des Adreßregisters
AR auf eine Anfangsadresse mit Hilfe eines in Fig. 1 dargestellten
Signals RA, das beispielsweise mittels einer Taste erzeugt wird.
Weitere Einzelheiten der Figuren 1 und 2 werden im folgenden zusammen
mit dem in Fig. 3 dargestellten Schaltbild der Steuerstufe ST beschrieben.
In Fig. 3 ist die in Fig. 1 abgebildete Steuerstufe ST durch Schaltbilder der Schaltstufe SS und des Vordecodierers VD darge-
'5 stellt. Weiterhin sind in Fig. 3 Teile des Schaltwerkes SW dargestellt.
Die Schaltstufe SS enthält Flipflops F1 bis F6, UND-Glieder U1 bis U4, ODER-Glieder V1 und V2 sowie Inverter N1 und N2.
Der Vordecodierer VD enthält zwei UND-Glieder U5 und U6 sowie zwei Decodierer DM und DD. In dem Schaltwerk SW sind vorgesehen eine
Mehrzahl von Decodierern und Multiplexern, von denen jeweils nur
ein Decodierer D1 bzw. ein Multiplexer M1 dargestellt ist. Die Ausgänge aller Multiplexer sind mit den Eingängen eines ODER-Glieds
V3 verbunden. Weiterhin enthält das Schaltwerk SW eine Übernahmeeinheit
UE, in der zwei weitere Flipflops F7 und F8, ein UND-Glied U7 sowie beispielsweise ein Register RG zur Übernahme eines eine
Konstante darstellenden Befehlswortes. Die den zu steuernden Teil des Schaltwerkes SW bildenden Bauelemente, Wie Verknüpfungsglieder
und/oder Flipflops sind nicht dargestellt.
VPA 76 E 2035 · 709847/0581
Die Arbeitsweise der Steuerstufe ST wird im folgenden im Zusammenhang
mit der Durchführung eines S-Befehls, eines C-Befehls und eines Ε-Befehls beschrieben. . <c^
Wenn am Speicher MPS ein einem S-Befehl zugeordnetes Befehlswort BW abgegeben wird, hat das Binärzeichen B1 den Binärwert 0. Es
wird angenommen, daß auf den S-Befehl kein Ε-Befehl folgen soll und daß damit das Binärzeichen B2 ebenfalls den Binärwert 0 hat.
Den Binärzeichen B1 und B2 zugeordnete·Signale BS1 und BS2 liegen
an den Daten«ingängen der Flipflops F1 und F2 an. An den Takteingängen
der Flipflops F1 und F2 liegen Taktimpulse T2 an. Diese Taktimpulse T2 gehören zu einer Folge von Taktimpulsen T1 bis T4,
die jeweils zueinander um 90 phasenverschoben sind und die die vom Taktgeber TG abgegebenen Taktimpulse T bilden. Mit dem Auftreten
des Taktimpulses T2 werden die Binärwerte 0 in die Flipflops F1 und £2 eingespeichert. Mit einem Taktimpuls T1 wurde bereits
das Adreßregister AR um eine Zähleinheit erhöht, um das Auslesen des nächstfolgenden Befehlswortes BW vorzubereiten. Es wird angenommen,
daß im vorhergehenden Befehlswort das Binärzeichen B2 nicht den Binärwert 1 hatte. Das am Ausgang des Flipflops F2 abgegebene
Signal hat damit den Binärwert 0 und das am Ausgang des ODER-Glieds V1 abgegebene Signal S1 hat damit ebenfalls den Binärwert 0. Weiterhin
wird angenommen, daß kein C-Befehl voranging und ein am invertierenden Ausgang des Flipflops F1 abgegebenes Signal S2 hat
°5 damit den Binärwert 1. Am Ausgang des ODER-Glieds V2 wird ein Signal
S3 mit dem Binärwert 1 abgegeben. Dieses Signal S3 liegt zusammen mit dem invertierten Signal S1, dem Taktimpuls T1 und
dem invertierten Signal BS1 am Eingang eines UND-Glieds U6 an.
Mit dem Auftreten des Taktimpulses T1 sind alle Bedingungen am Eingang des UND-Glieds U6 erfüllt und der Decodierer DD wird für
die Dauer des Taktimpulses T1 freigegeben. An weiteren Eingängen des Decodierers DD liegen den Binärzeichen B3 bis B5 zugeordnete
Signale BS3 bis BS5 an. In Abhängigkeit von den Binärwerten dieser Signale wird ein Ausgang des Decodierers DD freigegeben. An jedem
Ausgang des Decodierers DD sind in dem Schaltwerk SW die weiteren Decodierer D1 bis Dn angeschlossen. Den Auswahleingängen dieser
Decodierer D1 bis Dn werden den Binärzeichen B6 bis B8 zugeordnete
76E2O3S 709847/0581
Signale BS6 bis BS8 zugeführt und an einem mit Hilfe des Decodierers
DD ausgewählten Decodierer wird in Abhängigkeit von den Binärwerten der Signale BS6 bis BS8 ein Ausgang aktiviert. An diesem
Ausgang v/ird ein Signal aus einer Mehrzahl von Signalen R1 bis R8 abgegeben, das beispielsweise ein Flipflop im Schaltwerk setzt
oder zurücksetzt, das einen Zähler oder ein Register für die Übernahme
einer Konstanten vorbereitet oder in der Schaltstufe SS das Flipflop F3 so umschaltet, daß eine Mehrzahl von Ergebnissen von
Bedingungsabfragen mit Hilfe von nachfolgenden C-Befehlen nach einer UND- oder einer ODER-Verknüpfung verknüpft werden.
Bei der Durchführung eines C-Befehls hat das Signal BS1 den Binärwert 1. Unter der Voraussetzung, daß kein Ε-Befehl folgt, hat das
Signal BS2 den Binärwert 0. Mit dem Auftreten des Taktimpulses T2 werden der Binärwert 1 in das Flipflop F1 und der Binärwert
0 in das Flipflop F2 eingespeichert. Mit dem Taktimpuls T1 wurde bereits das Adreßregister AR um eine Zähleinheit erhöht, um das
Auslesen des nächsten Befehlswortes vorzubereiten. Das Signal S1 hat den Binärwert 0 und mit dem Auftreten des Taktimpulses T1 gibt
das UND-Glied U5 ein Signal an den Decodierer DM im Vordecodierer VD ab. In Abhängigkeit von den Binärwerten der Signale BS3 bis
BS5 wird ein Ausgang des Vordecodierers DM aktiviert und damit wird im Schaltwerk SW ein Multiplexer zur Abfrage von Bedingungen
in dem Schaltwerk SW ausgewählt. Den Auswahleingängen des Multi-
°5 plexers werden die Signale BS6 bis BS8 zugeführt, die die Adresse
eines abzufragenden Signals aus einer Mehrzahl von Signalen A1 bis A8 angeben. Der Ausgang des Multiplexers M1 ist über einen
Eingang des ODER-Glieds V3 mit der Schaltstufe SS verbunden. An den übrigen Eingängen des ODER-Glieds V3 sind die Ausgänge der
weiteren Multiplexer im Schaltwerk SW angeschlossen.
Falls die abgefragte Bedingung nicht erfüllt ist und das Signal S4 am Ausgang des ODER-Glieds V3 den Binärwert 0 hat, wird das
mit einem Taktimpuls T1 gesetzte Flipflop F6 nicht zurückgesetzt und mit dem Taktimpuls T3 wird das Flipflop F5 gesetzt. Das Flipflop F4 wird nicht gesetzt. Mit dem Taktimpuls T4 wird das nächste
Befehlswort aus dem Speicher MPS ausgelesen. Dieses Befehlswort
76 E 2035 709847/0581
bleibt jedoch ohne Wirkung für den weiteren Ablauf des Mikroprogramms,
da die Signale S3 und SA nicht aktiviert werden.
Falls die Bedingung jedoch erfüllt war, wird das Flipflop F6 zurückgesetzt,
das Flipflop F5 wird nicht gesetzt und das Flipflop F4 wird gesetzt. Anschließend wird der durch das nächstfolgende
Befehlswort angegebene Befehl durchgeführt, da über die UND-Glieder U2 oder U3 sowie das ODER-Glied V2 das Signal S3 freigegeben
wird. Falls im Befehlswort das Binärzeichen B2 den Binärwert 1 hatte, ist auch das Flipflop F2 gesetzt. Damit wird über das UND-Glied
U4 auch das Signal SA freigegeben und das nachfolgende Befehlswort wird als Adresse interpretiert.
Falls im Mikroprogramm mehrere C-Befehle aufeinanderfolgen, werden
die Ergebnisse der einzelnen abgefragten Bedingungen logisch miteinander verknüpft. Falls eine UND-Verknüpfung der Bedingungen
erfolgen soll, wird mit Hilfe eines S-Befehls das Flipflop F3 gesetzt.'
Bei einer ODER-Verknüpfung wird das Flipflop F3 zurückgesetzt. Wenn einem C-Befehl ein weiterer C-Befehl folgt, so hat
das Flipflop F1 den Binärwert 1. Es wird angenommen, daß den C-Befehlen
ein S-Befehl voranging, der das Flipflop F3 gesetzt hat und eine UND-Verknüpfung der abgefragten Bedingungen voreingestellt
hat. Mit dem Taktimpuls T1 wird wie bei jedem C-Befehl das Flipflop F6 gesetzt. Falls die abgefragte Bedingung nicht erfüllt ist,
bleibt das Flipflop F6 in seiner gesetzten Lage und das Flipflop F5 wird mit dem Taktimpuls T3 gesetzt und bleibt gesetzt bis zum
Taktimpuls T3 des nächstfolgenden Befehlswortes, das keinen C-Befehl darstellt. Dieser Befehl bleibt damit ebenfalls ohne Wirkung
.
Unter der Annahme, daß eine ODER-Verknüpfung der abgefragten Bedingungen
durchgeführt werden soll, hat das Signal am Ausgang des . Flipflops F3 den Binärwert 0. Das Signal am Ausgang des Inverters
N2 hat damit den Binärwert 1 und das UND-Glied U3 ist freigegeben.
Sobald eine der abgefragten Bedingungen erfüllt ist und das Signal
S4 den Binärwert 1 hat, wird das Flipflop F4 gestzt und bleibt gesetzt bis zum Taktimpuls T3 des nächstfolgenden Befehlswortes,
VPA 76 E 2035 7098A7/0581
das keinen C-Befehl darstellt. Über das UND-Glied U3 und das ODER-Glied
V2 wird beispielsweise das Signal S3 an das UND-Glied U6 abgegeben. Damit kann der nächstfolgende S-Befehl ausgeführt werden
.
5
5
Falls in einem Befehlswort, das einen S- oder einen C-Befehl darstellt,
das Binärzeichen B2 den Binärwert 1 hat, wird das nächstfolgende Befehlswort als Adresse, d.h. als Ε-Befehl interpretiert.
Durch die Binärzeichen dieses Befehlswortes wird eine Adresse für das nächste aus dem Speicher MPS auszulesende Befehlswort dargestellt.
Beim Auftreten eines Ε-Befehls hat das Signal am Ausgang des Flipflops F2 den Binärwert 1 und das UND-Glied U4 wird freigegeben.
Außerdem setzt das Signal S1 die Flipflops F1 und F2 zurück und sperrt die UND-Glieder U5 und U6. Falls dem Ε-Befehl ein
S-Befehl voranging oder ein C-Befehl voranging und die abgefragte Bedingung erfüllt war, gibt das UND-Glied U4 ein Signal SA an das
Adreßregister AR. Dieses Signal SA speichert das Befehlswort BW als Adresse für das nächste Befehlswort in das Adreßregister AR
ein. Anschließend werden mit einem Taktimpuls T3 die Flipflops F4 und F5 zurückgesetzt.
Falls durch einen Ε-Befehl eine Konstante für das Schaltwerk SW
dargestellt werden soll, wird mit Hilfe eines S-Befehls am Ausgang
des Decodierers D1 ein Signal R1 erzeugt, das das Flipflop F7 setzt, Der nächstfolgende Taktimpuls T4 setzt das Flipflop F8. Das Flipflop F8 gibt an seinem Ausgang ein Signal S6 an das ODER-Glied
V1 ab, das die Flipflops F1 und F2 zurücksetzt, sowie die UND-Glieder U5 und U6 sperrt. Das Signal am Ausgang des Flipflops F2
hat den Binärwert 0 und an das Adreßregister AR wird damit kein Signal SA abgegeben. Das Signal S6 gibt außerdem das UND-Glied
U7 frei und mit dem nächstfolgenden Taktimpuls T2, der dem E-Befehl
zugeordnet ist, werden die den Binärzeichen B1 bis B8 des Befehlswortes zugeordneten Signale BS1 bis BS8 in das Register
RG eingespeichert. Am Ausgang des Registers RG werden damit Signale
P1 bis P8 abgegeben, die für weitere Steueraufgabert im Schaltwerk SW zur Verfügung stehen. Anstelle des Registers RG kann
auch ein Zähler vorgesehen werden, der durch die Signale BS1 bis
709847/0581
vi ?6?2974
BS8 voreingestellt wird und mit Hilfe von Taktimpulsen bis zu
einem vorgegebenen Zählerstand gezählt wird. Mit Hilfe eines
derartigen Zählers können beispielsweise Zeitverzögerungen im
Schaltwerk SW realisiert'werden. Das Flipflop F7 wird bereits während des S-Befehls mit der Rückflanke des Taktimpulses T4 zurückgesetzt. Mit der Vorderflanke des Taktimpulses T4 während des E-Befehls werden das Flipflop F8 und damit auch das Signal S6 zurückgesetzt. Damit wird das Übernahmesignal für das Register RG gesperrt.
einem vorgegebenen Zählerstand gezählt wird. Mit Hilfe eines
derartigen Zählers können beispielsweise Zeitverzögerungen im
Schaltwerk SW realisiert'werden. Das Flipflop F7 wird bereits während des S-Befehls mit der Rückflanke des Taktimpulses T4 zurückgesetzt. Mit der Vorderflanke des Taktimpulses T4 während des E-Befehls werden das Flipflop F8 und damit auch das Signal S6 zurückgesetzt. Damit wird das Übernahmesignal für das Register RG gesperrt.
Falls eine Mehrzahl von Konstanten zum Schaltwerk SW übertragsn
werden soll, wird beispielsweise mit Hilfe eines Zählers in der Übernahmeeinheit UE das Signal S6 solange aufrechterhalten, bis
alle Konstanten übertragen wurden. Mit Hilfe dieses Zählers und eines nachgeschalteten Decodierers wird außerdem eine Mehrzahl
von Übernahmesignalen erzeugt, mit denen die Konstanten an verr
schiedene Register und/oder Zähler verteilt werden.
11 Patentansprüche
3 Figuren
20
20
VPA 76 E 2035 709847/0581
4Ϊ
Leerseite
Claims (11)
- Patentansprüche\\j/ Mikroprogrammierbares Steuerwerk, bei dem ein aus einer Mehrzahl von Befehlswörtern bestehendes Mikroprogramm in einem Speicher gespeichert ist, bei dem die Adressen der Befehlswörter in einem mit dem Speicher verbundenen Adreßregister gespeichert sind, bei dem mittels Decodierer Steuersignale für ein zu steuerndes Schaltwerk erzeugt werden und bei dem mittels Multiplexer Bedingungen in de* Schaltwerk abfragbar sind, dadurch gekennzeichnet, daß eine Steuerstufe (ST) vorgesehen ist, der die Befehlswörter (S, C, E) zugeführt werden und die jeweils eine Mehrzahl von Binärzeichen (B3 bis B8) eines Befehlswortes zu den Decodierern (DD, D1 bis Dn) durchschaltet, wenn im Befehlswort ein vorgegebenes erstes Binärzeichen (B1) einen ersten Binärwert (11O") hat, die jeweils eine Mehrzahl von Binärzeichen (B3 bis B8) des Befehlswortes zu Auswahleingängen der Multiplexer (M1 bis Mn) durchschaltet, wenn das vorgegebene erste Binärzeichen (B1) einen zweiten Binärwert ("1") hat und die das Befehlswort als Adresse zum Adreßregister (AR) durchschaltet, wenn ein vorgegebenes zweites Binärzeichen (B2) im vorhergehenden Befehlswort einen festgelegten Binärwert ("1") hat.
- 2. Mikroprogrammierbares Steuerwerk nach Anspruch 1, dadurch gekennzeichnet, daß die Steuerstufe (ST) derart ausgebildet ist, daß sie ein Befehlswort als Konstante (K) zum Schaltwerk (SW) durchschaltet, wenn im vorhergehenden Befehlswort das vorgegebene erste Binärzeichen (B1) den ersten Binärwert ("0") und eine Mehrzahl von Binärzeichen (B3 bis B8) festgelegte Binärwerte haben.
- 3. Mikroprogrammierbares Steuerwerk nach Anspruch 2, dadurch gekennzeichnet, daß die Steuerstufe (ST) derart ausgebildet ist, daß sie eine Mehrzahl von die Konstanten darstellenden Befehlswörtern nach Auslösung durch ein vorhergehendes Befehlswort (S) zeitlich nacheinander zum Schaltwerk überträgt.709847/0581VPA 76 E 2035ORIGINAL INSPECTED
- 4. Mikroprograimnierbares Steuerwerk nach einem der Ansprüche1 bis 3, dadurch gekennzeichnet, daß die Steuerstufe (ST) Schaltglieder (F3 bis F6, U1 bis U3) enthält, mit denen sich aus der zeitlichen Aufeinanderfolge einer Mehrzahl von Befehlswörtern ergebende logische Verknüpfungen durchführbar sind.
- 5. Mikroprogrammierbares Steuerwerk nach Anspruch.4, dadurch gekennzeichnet, daß die Steuerstufe (ST) ein erstes Flipflop (F4) enthält, das jeweils gesetzt wird, wenn mindestens eine von mehreren nacheinander abgefragten Bedingungen erfüllt ist und das zurückgesetzt wird, wenn ein Befehlswort (S, E) folgt, das kein Abfragen von Bedingungen auslöst.
- 6. Mikroprogrammierbares Steuerwerk nach Anspruch 4 oder Anspruch 5, dadurch gekennzeichnet, daß die Steuerstufe (ST) ein zweites Flipflop (F5) enthält, das gesetzt wird, wenn mindestens eine von mehreren nacheinander abgefragten Bedingungen nicht erfüllt ist und das zurückgesetzt wird, wenn ein Befehlswort (S, E) folgt, das kein Abfragen von Bedingungen auslöst.
- 7. Mikroprogrammierbares Steuerwerk nach Anspruch 6, d a durch gekennzeichnet, daß dem zweiten Flipflop (F5) ein weiteres Flipflop (F6) vorgeschaltet ist, das jeweils zu Beginn eines Befehls (C), mit dem Bedingungen abgefragt werden, gesetzt und das immer dann zurückgesetzt wird, wenn die Bedingung erfüllt war und das zu einem späteren Zeitpunkt des Befehls (C), falls es zu diesem Zeitpunkt noch nicht zurückgesetzt war, das zweite Flipflop (F5) setzt.
- 8. Mikroprogrammierbares Steuerwerk nach einem der Ansprüche 4 bis 6, dadurch gekennzeichnet, daß ein drittes Flipflop (F3) vorgesehen ist, das durch an die Decodierer (D1 bis Dn) übertragene Befehlswörter gesetzt und zurückgesetzt wird und das eine ODER- bzw. UND-Verknüpfung auslöst, wenn es gesetzt bzw. zurückgesetzt ist.76 ε 2035 709847/0581
- 9. Mikroprogrammierbares Steuerwerk nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Steuerstufe (ST) Speicherglieder (F1, F2) enthält, denen die ersten und zweiten vorgegebenen Binärzeichen (B1, B2) zugeführt werden und die jeweils das erste und zweite vorgegebene Binärzeichen (B1, B2) des vorhergehenden Befehlswortes speichern.
- 10. Mikroprogrammierbares Steuerwerk nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Steuerstufe (ST) in einem Vordecodierer (VD) einen Decodierer (DD) enthält, dem jeweils vorgegebene Binärzeichen (B3 bis B5) des Befehlswortes (S) zugeführt werden und der an die Decodierer (D1 bis Dn) im Schaltwerk (SW) Auswahlimpulse abgibt.
- 11. Mikroprogrammierbares Steuerwerk nach einem der vorangehen-den Ansprüche, dadurch gekennzeichnet, daß die Steuerstufe (ST) in einem Vordecodierer (VD) einen Decodierer (DM) enthält, dem jeweils vorgegebene Binärzeichen (B3 bis B5) des Befehlswortes (C) zugeführt werden und der an jeweils einen Auswahleingang der Multiplexer (M1 bis Mn) im Schaltwerk (SW) Auswahlimpulse abgibt.VPA 76 E 2035 ' 709847/0581
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762622974 DE2622974A1 (de) | 1976-05-21 | 1976-05-21 | Mikroprogrammierbares steuerwerk |
US05/797,341 US4131835A (en) | 1976-05-21 | 1977-05-16 | Microprogrammable control unit |
IT23643/77A IT1074343B (it) | 1976-05-21 | 1977-05-17 | Apparato di comando microprogrammabile |
BE177761A BE854861A (fr) | 1976-05-21 | 1977-05-20 | Dispositif de commande a microprogrammation |
NL7705597A NL7705597A (nl) | 1976-05-21 | 1977-05-20 | Microgeprogrammeerde stuureenheid. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19762622974 DE2622974A1 (de) | 1976-05-21 | 1976-05-21 | Mikroprogrammierbares steuerwerk |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2622974A1 true DE2622974A1 (de) | 1977-11-24 |
Family
ID=5978738
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762622974 Pending DE2622974A1 (de) | 1976-05-21 | 1976-05-21 | Mikroprogrammierbares steuerwerk |
Country Status (5)
Country | Link |
---|---|
US (1) | US4131835A (de) |
BE (1) | BE854861A (de) |
DE (1) | DE2622974A1 (de) |
IT (1) | IT1074343B (de) |
NL (1) | NL7705597A (de) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54102734A (en) * | 1978-01-30 | 1979-08-13 | Nissan Motor Co Ltd | Device for automatically selecting driving position |
DE2805939C2 (de) * | 1978-02-13 | 1980-01-31 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Steuerwerk |
US4307445A (en) * | 1978-11-17 | 1981-12-22 | Motorola, Inc. | Microprogrammed control apparatus having a two-level control store for data processor |
FR2525832B1 (fr) * | 1982-04-23 | 1986-05-09 | Carpano & Pons | Dispositif de commande d'un moteur electrique |
GB8421066D0 (en) * | 1984-08-18 | 1984-09-19 | Int Computers Ltd | Microprogram control |
DE3650740D1 (de) * | 1985-11-08 | 2000-04-06 | Nec Corp | Mikroprogrammsteuereinheit |
US5350988A (en) * | 1990-07-10 | 1994-09-27 | Alliedsignal, Inc. | Digital motor controller |
US5237250A (en) * | 1991-11-01 | 1993-08-17 | Zeile Kim A | Multiplexed stepper motor control apparatus |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1433868A (en) * | 1972-05-06 | 1976-04-28 | Herbert Ltd A | Automatic control systems for and methods of controlling machine tool apparatus |
JPS6045442B2 (ja) * | 1976-02-25 | 1985-10-09 | 豊田工機株式会社 | 直線補間パルス分配方式 |
-
1976
- 1976-05-21 DE DE19762622974 patent/DE2622974A1/de active Pending
-
1977
- 1977-05-16 US US05/797,341 patent/US4131835A/en not_active Expired - Lifetime
- 1977-05-17 IT IT23643/77A patent/IT1074343B/it active
- 1977-05-20 NL NL7705597A patent/NL7705597A/xx not_active Application Discontinuation
- 1977-05-20 BE BE177761A patent/BE854861A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
US4131835A (en) | 1978-12-26 |
NL7705597A (nl) | 1977-11-23 |
IT1074343B (it) | 1985-04-20 |
BE854861A (fr) | 1977-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2714805A1 (de) | Datenverarbeitungssystem | |
DE2117936A1 (de) | Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems | |
DE2611892C2 (de) | Mikroprogramm-Steueranordnung | |
DE1815078B2 (de) | Elektronisches Datenverarbeitungssystem | |
DE2855673C2 (de) | ||
DE2036729A1 (de) | Digital Datenverarbeiter | |
EP0134831B1 (de) | Einrichtung im Befehlswerk eines Fliessbandprozessors zur Befehlsunterbrechung und -wiederholung | |
DE2421130C2 (de) | ||
DE2145709A1 (de) | Datenverarbeitungsanlage | |
EP0218280B1 (de) | Datenverarbeitungsanordnung | |
DE2622974A1 (de) | Mikroprogrammierbares steuerwerk | |
DE1499191B2 (de) | Elektronische einrichtung fuer eine datenverarbeitungsanlage | |
DE2136210A1 (de) | Zentraleinheit fur eine EDV-Anlage | |
DE2245284A1 (de) | Datenverarbeitungsanlage | |
DE1952175C3 (de) | Steuerungsanordnung für die Anzeige von Datenzeichen in fabulierter Form | |
DE2545751C2 (de) | Ablaufsteuerung für eine Datenverarbeitungsanlage | |
DE4340551A1 (de) | Programmspeichererweiterung für einen Mikroprozessor | |
DE2519195A1 (de) | Assoziativspeicher | |
DE2710436A1 (de) | Datenverarbeitungseinrichtung | |
DE2744252C2 (de) | ||
DE2936801C2 (de) | Steuereinrichtung zur Ausführung von Instruktionen | |
DE2024584B2 (de) | Steuereinrichtung für eine allgemeine Datenverarbeitungseinrichtung | |
DE1549446A1 (de) | Digitalrechner | |
DE2911147C2 (de) | ||
EP0243879B1 (de) | Verfahren und Anordnung zur Beschleunigung der Bereitstellung eines Befehles im Befehlsregister eines mikroprogrammgesteuerten Prozessors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
OHW | Rejection |