DE2846537A1 - Mikroprozessorsystem - Google Patents
MikroprozessorsystemInfo
- Publication number
- DE2846537A1 DE2846537A1 DE19782846537 DE2846537A DE2846537A1 DE 2846537 A1 DE2846537 A1 DE 2846537A1 DE 19782846537 DE19782846537 DE 19782846537 DE 2846537 A DE2846537 A DE 2846537A DE 2846537 A1 DE2846537 A1 DE 2846537A1
- Authority
- DE
- Germany
- Prior art keywords
- microprogram
- commands
- memory
- microprocessor system
- macro
- 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
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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- 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/26—Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
- G06F9/262—Arrangements for next microinstruction selection
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)
- Microcomputers (AREA)
Description
_ ~Z mm
H.J.Golbach - 5
Mikroprozessorsystem
Die Erfindung betrifft ein Mikroprozessorsystem mit einem aus einem Mikroprogrammspeicher und einem Mikroprogrammsteuerwerk
bestehenden Steuerwerk, einem festverdrahteten Rechenwerk sowie einem Programmspeicher, die durch Adressen-Daten-
und Steuerleitungen miteinander verbunden sind.
Ea handelt sich hierbei um ein mikroprogrammierbares Mikroprozessorsystem.
Herkömmliche Mikroprozessoren weisen einen Zentralprozessor (CPU) auf, der aus einer festverdrahteten
arithmetisch-logischen Einheit (ALU) und einem Steuerwerk, das ebenfalls festverdrahtet ist, bestehen. Die aus einem
Programmspeicher ausgelesenen Arbeitsbefehle werden nach einem Funktions- und Zeitplan abgearbeitet, der durch das
Steuerwerk bestimmt wird und von dem Hersteller des Mikroprozessorsystems,
von vorn herein festgelegt ist. Der Benutzer des Mikroprozessors hat keine Möglichkeit, in den
Ablauf der von dem Steuerwerk bestimmten Operationen einzugreifen.
Im Gegensatz hierzu weist das mikroprogrammierbare Mikroprozessorsystem
ein nicht-festverdrahtetes Steuerwerk (CU) auf, über das der Benutzer den internen Arbeitsablauf des Mikroprozessorsystems
selbst festlegen kann, und zwar mittels der sogenannten Mikroprogrammierung. Das Steuerwerk (CU) ist hier
von der festverdrahteten (ALU) getrennt und enthält einen schnellen Speicher, den Mikroprogrammspeicher, und ein Mikroprogramm-Steuerwerk,
auch als Sequenzer oder Nächstadressenlogik bezeichnet .
10.10.1978
Bk/Mr
Bk/Mr
03001 9/02Oi
H.J. Golbach - 5
Das vom Benutzer des Mikrorechners geschriebene Programm, dessen Befehle der Mikrorechner auszuführen hat, wird hier
als Makroprogramm und dessen Befehle als Makrobefehle bezeichnet. Zum Ausführen eines Makrobefehls muß der Mikroprozessor
jeweils bestimmte Operationen durchführen, die im mikroprogrammierbaren Rechner durch einzelne Befehle des
Mikroprogramms, d.h. durch Mikrobefehle festgelegt werden. Jeder Makrobefehl wird in eine Folge von Mikrobefehlen
zerlegt und durch Abarbeiten dieser Mikrobefehle ausgeführt. Damit ermöglicht es die Mikroprogrammierung dem Benutzer,
die erforderlichen Makrobefehle nach Belieben zu bestimmen. Der Benutzer kann somit den Befehlsvorrat des Mikroprozessorsystems
selbst festlegen.
Für die Codierung von Befehlen des Makroprograimns stehen im
allgemeinen wegen dem beschränkten Platz in dem Programmspeicher nicht beliebig viele Bits zur Verfügung. Dies gilt
insbesondere auch bei Verwendung höherer Programmiersprachen, bei denen einzelne Befehle aus einer Folge von Teilbefehlen
bestehen können.
Der Erfindung liegt die Aufgabe zugrunde, den Platzbedarf in dem Programmspeicher zu verringern und gleichzeitig die Anzahl der
in dem Mikroprozessorsystem zu verwendenden Makrobefehle zu erhöhen .
Diese Aufgabe wird erfindungsgemäß durch einen Mikroprozessor
der eingangs genannten Art gelöst, bei dem zwischen dem Mikroprogrammspeicher und das Mikroprogrammsteuerwerk durch Signale
des Mikroprogrammspeichers einstellbare Flip-Flops eingefügt sind, durch deren Stellung die Bedeutung der einzelnen
Teilbefehle in Abhängigkeit von ihrer Reihenfolge innerhalb eines Makrobefehls festgelegt wird.
030019/0204
«1
H.J.Golbach - 5
Vorteilhafte Weiterbildungen der Erfindung sind in den neben- und untergeordneten Patentansprüchen 2 und 3 gekennzeichnet.
Die Anzahl der in binärcodierter Form in dem Programmspeicher aufzunehmenden Befehle und damit der Befehlsvorrat eines
Mikroprozessorsystems ist durch die Anzahl der zur Verfügung stehenden Bits begrenzt. Mit η möglichen Bits lassen sich
maximal 2 Befehle codieren (mit .z.B. sechs Bits maximal 64 Teilbefehle). Erfindungsgemäß werden den η Bits der Teilbefehle
weitere m Bits hinzugefügt und damit die maximale Anzahl von Makrobefehlen auf 2n+ra erhöht. Gleiche Bitmuster
der 2 Teilbefehle haben dann je nach ihrer Stellung innerhalb einer Folge unterschiedliche Bedeutung.
Ein Ausführungsbeispiel der Erfindung wird nun anhand der Zeichnung im einzelnen erläutert. Es zeigen:
Fig.l ein erfindungsgemäßes Mikroprozessorsystem in Blockdiagrammdarstellung
,
Fig.2 ein Beispiel eines Makrobefehls und dessen Realisierung
durch eine Folge von Teilbefehlen, deren Reihenfolge durch die Stellung von zwei Flip-Flops bestimmt wird
und
Fig.3 ein Mikroprogrammspeicher des Mikroprozessorsystems
nach Fig.l.
Ein Steuerwerk CU eines mikroprogrammierbaren Mikroprozessorsystems
(Fig.l) enthält ein Mikroprogramm-Steuerwerk MCU, auch als Sequenzer oder Nächstadressenlogik bezeichnet, und
einen Mikroprogrammspeicher MPS. Der Mikroprogrammspeicher MPS ist als ROM- oder als PROM-Baustein mit schnellem Zugriff
ausgebildet, und er nimmt das Mikroprogramm auf. Das Mikroprogrammsteuerwerk
MCU bestimmt die Adresse des jeweils nächsten
030019/0204
H.J. Golbach - 5
auszuführenden Mikroprogrammbefehls. Diese Adresse wird über die Adressenleitung ALI auf den Mikroprogrammspeicher MPS
übertragen. Alle Adressen- und Befehlsleitungen des Mikroprozessorsystems sind als Mehrfachleitungen oder Busse ausgeführt,
wie in der Zeichnung durch Schrägstriche angedeutet ist. Die jeweiligen Polgeadressen werden von dem Mikroprogrammspeicher
MPS über eine Adressenleitung AL2 auf das Steuerwerk MCU übertragen. Der Teil des jeweils abzuarbeitenden
Mikrobefehls, der die auszuführende MikroOperation oder Elementarfunktion steuert, wird über eine Mikrobefehlsleitung
MBL auf eine arithmetisch-logische Einheit ALU übertragen. Außer dieser ALU kann das Mikroprozessorsystem weitere
festverdrahtete Rechenschaltungen (Hardware) enthalten, die in der Zeichnung nicht dargestellt sind, deren Steuerung
aber ebenfalls über die Mikrobefehlsleitung MBL erfolgt. Die arithmetisch-logische Einheit ALU ist durch eine Ausgangs
-Datenleitung OL und eine Eingangs-Datenleitung IL mit einer in der Zeichnung nicht dargestellten Ein/Ausgabeeinheit
verbunden, die das Mikroprozessorsystem mit seiner Peripherie verbindet.
Ein Programmspeicher PS enthält das von dem Mikroprozessorsystem oder Mikrorechner auszuführende (Makro) Programm. Die
Befehle dieses Programms, die bei Verwendung einer höheren Programmiersprache aus Folgen von Teilbefehlen bestehen,
werden über eine Befehlsleitung BL auf das Mikroprogramm-Steuerwerk MCU übertragen. Die Befehlsleitung BL weist eine
dem Befehlsformat der Teilbefehle des Makroprogramms entsprechende Anzahl η von Einzelleitungen auf.
Zusätzliche Ausgänge -ZA des Mikroprogrammspeichers MPS sind durch eine
Steuerleitung SL mit zusätzlichen Eingängen ZE des Mikroprogramm-Steuerwerks MCU verbunden. Diese
03 0 019/0204
H.J.Golbach - 5
Steuerleitung SL besteht aus m Einzelleitungen, von denen
jede ein Flip-Flop FFl, ..., FFm enthält, über diese Einzel-Steuerleitungen
werden zusätzliche Bits aus dem Mikroprogrammspeicher MPS übertragen, welche die einzelnen Flip-Flops FFl
bis FFm stellen und damit die Bedeutung der Einzelbefehle innerhalb einer Befehlsfolge des Makroprogramms festlegen.
Den η Bits des Makrobefehls werden somit weitere m Bits hinzugefügt, die maximale Anzahl von Makrobefehlen wird dadurch
um den Faktor 2m erhöht, d.h. der Makrobefehlsvorrat wird
erweitert. Bei den Beispielen gemäß Fig.2 und Fig.3 ist
die Anzahl der Zusatzbits m=2.
Von der arithmetisch-logischen Einheit ALU führt eine Adressenleitung
AL3 zu dem Makroprogrammspeicher PS, während eine die arithmetisch-logische Einheit ALU mit dem Makroprogranmspeicher
PS verbindende Datenleitung DL den Austausch von Daten- und Steuerzeichen zwischen der ALU und dem PS ermöglicht.
Das aus Fig.2 ersichtliche Beispiel stellt die erfindungsgemäße
Realisierung des folgenden Befehls dar: Addition einer basisrelativ adressierten Variablen IA zu einer direkt
indiziert adressierten Variablen DX und Transfer des Ergebnisses in einen direkt adressierten Speicherplatz D des
Datenspeichers. Auf der linken Spalte von Fig.2 ist die in einer höheren Programmiersprache geschriebene Anweisung
ersichtlich. Diese Anweisung ist in der mittleren Spalte in eine Folge von Teilbefehlen zerlegt, die in binärcodierter
Form in den Programmspeicher PS eingeschrieben sind. Die Teilbefehle steuern die von der arithemtisch-logischen Einheit
ALU oder der sonstigen Hardware durchzuführenden Operationen. Auf der rechten Spalte von Fig.2 sind die die Stellung
der Flip-Flops kennzeichnenden Zusatzbits ersichtlich. In diesem Beispiel werden zwei Zusatzbits verwendet, d.h. die
Steuerleitung SL weist zwei Einzelleitungen auf, die ein
030019/0204
H.J.Golbach - 5
erstes Flip-Flop FFl bzw. ein zweites Flip-Flop FF2 enthalten.
Am Ende einer jeden zusammengehörenden Folge von Teilbefehlen werden die Flip-Flops, die die Zusatzbits aus dem Mikroprogramm
speichern, welche die Erweiterung des Vorrates an Makrobefehlen bewirken, z.B. wieder auf den Wert "00" gesetzt. Damit
ist der Bereich der Startadressen der nachfolgenden Makrobefehlsfolge eindeutig gekennzeichnet. Durch das dem ersten
Makroteilbefehl entsprechende Mikroprogramm wird die erste Variable, die basisrelativ adressiert ist3 in ein internes
Register R des Mikroprozessors geladen, und im Laufe dieses Mikroprogramms werden die Flip-Flops auf "01"- eingestellt.
Die Startadresse für den zweiten (Makro) Teilbefehl ist nun in dem «Speicherteil zu finden, der durch die Bitkombination
"01" bestimmt ist. Im nachfolgenden Mikroprogramm, das durch den zweiten Teilbefehl gestartet wird, wird dann die zweite
Variable adressiert und die Flip-Flops auf "10" eingestellt. Damit ist der Bereich für die Startadresse des dritten Teilbefehls
festgelegt, der die Addition der beiden Variablen, den Transfer des Ergebnisses nach R und das Einstellen der
Flip-Flops auf "11" veranlaßt. Diese Zusatzbits "11" legen den Bereich für den Start des vierten zu dieser Teilbefehlsfolge
gehörenden Mikroprogramms fest, durch das das Ergebnis der Addition aus dem internen Register R in den Datenspeicher
transferiert und die Flip-Flops, da nun die Abarbeitung des Makrobefehls beendet ist, wieder auf "00" gesetzt werden.
Der aus Fig.3 ersichtliche Mikroprogrammspeicher MPS ist
in vier Bereiche mit je 64 Wörtern aufgeteilt. Diese vier Bereiche werden durch die aus dem Mikroprogrammspeicher abgegebenen
Zusatzbits gekennzeichnet, die Adressen innerhalb der einzelnen Bereiche durch den Adresscode des Makrobefehls.
030019/0204
Leerseite
Claims (1)
- STANDARD ELEKTRIK LORENZ
AKTIENGESELLS CHAFTStuttgartH.J.Golbach - 5P at ent ansprücheIJ Mikroprozessorsystem mit einem aus einem Mikroprogrammspeicher und einem Mikroprogrammsteuerwerk bestehenden Steuerwerk, einem festverdrahteten Rechenwerk sowie einem Programmspeicher, die durch Adressen-, Daten- und Steuerleitungen miteinander verbunden sind, dadurch gekennzeichnet,daß zwischen den Mikroprogrammspeicher (MPS) und das Mikroprogramms teuerwerk (MCU) durch Signale des Mikroprogrammspeichers (MPS) einstellbare Flip-Plops (FFl bis FFm) eingefügt sind, durch deren Stellung die Bedeutung der einzelnen Teilbefehle in Abhängigkeit von der Reihenfolge innerhalb eines Makrobefehls festgelegt wird.2. Mikroprozessorbefehl nach Anspruch 1,dadurch gekennzeichnet, daß zusätzliche Ausgänge (ZA) des Mikroprogrammspeichers (MPS) mit zusätzlichen Eingängen (ZE) des Mikroprogrammsteuerwerks (MCU) durch Steuerleitungen (SL) verbunden sind, in denen jeweils eines der Flip-Flops (FFl bis FFm) liegt.10.10.1978
Bk/Mr030019/0204ORIGINAL INSPECTEDH.J-Golbach - 5Verfahren zum Realisieren von aus mehreren Teilbefehlen vorgegebener Bitzahl bestehenden Makrobefehlen in einem Mikroprozessorsystem nach Anspruch 1 oder 2,dadurch gekennzeichnet, daß die Bitzahl der Teilbefehle durch Ausgangssignale des Mikroprogrammspeichers um zusätzliche Bits erweitert, dadurch die Anzahl der möglichen Teilbefehle vergrößert und durch diese zusätzlichen Bits die Bedeutung der aus dem Programmspeicher ausgelesenen Teilbefehle mit festgelegt wird.030019/0204
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782846537 DE2846537C2 (de) | 1978-10-26 | 1978-10-26 | Mikroprogrammierte Datenverarbeitungseinrichtung |
FR7926362A FR2440030A1 (fr) | 1978-10-26 | 1979-10-24 | Systeme programmable a microprocesseur |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782846537 DE2846537C2 (de) | 1978-10-26 | 1978-10-26 | Mikroprogrammierte Datenverarbeitungseinrichtung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2846537A1 true DE2846537A1 (de) | 1980-05-08 |
DE2846537C2 DE2846537C2 (de) | 1986-09-18 |
Family
ID=6053115
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782846537 Expired DE2846537C2 (de) | 1978-10-26 | 1978-10-26 | Mikroprogrammierte Datenverarbeitungseinrichtung |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE2846537C2 (de) |
FR (1) | FR2440030A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3121742A1 (de) * | 1980-06-02 | 1982-02-11 | Hitachi, Ltd., Tokyo | Mikroprogrammsteuerverfahren und -einrichtung zu dessen durchfuehrung |
DE3116385A1 (de) * | 1980-04-25 | 1982-03-04 | Tokyo Shibaura Denki K.K., Kawasaki, Kanagawa | Mikroprogramm-steuerungssystem |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8205076A (nl) * | 1982-12-31 | 1984-07-16 | Philips Nv | Data processor eenheid voorzien van een stuurgedeelte welk een adresgenerator bevat voor het genereren van adressen welke uit karakteristieke adresdelen zijn samengesteld. |
JP2677719B2 (ja) * | 1991-05-08 | 1997-11-17 | 富士通株式会社 | 情報処理装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1270305B (de) * | 1964-04-04 | 1968-06-12 | Ibm | Mikroprogrammgesteuerte Datenverarbeitungsanlage |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3422404A (en) * | 1966-02-23 | 1969-01-14 | David E Ferguson | Apparatus and method for decoding operation codes in digital computers |
-
1978
- 1978-10-26 DE DE19782846537 patent/DE2846537C2/de not_active Expired
-
1979
- 1979-10-24 FR FR7926362A patent/FR2440030A1/fr not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1270305B (de) * | 1964-04-04 | 1968-06-12 | Ibm | Mikroprogrammgesteuerte Datenverarbeitungsanlage |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3116385A1 (de) * | 1980-04-25 | 1982-03-04 | Tokyo Shibaura Denki K.K., Kawasaki, Kanagawa | Mikroprogramm-steuerungssystem |
US4633390A (en) * | 1980-04-25 | 1986-12-30 | Tokyo Shibaura Denki Kabushiki Kaisha | Microprogram control system |
DE3121742A1 (de) * | 1980-06-02 | 1982-02-11 | Hitachi, Ltd., Tokyo | Mikroprogrammsteuerverfahren und -einrichtung zu dessen durchfuehrung |
Also Published As
Publication number | Publication date |
---|---|
DE2846537C2 (de) | 1986-09-18 |
FR2440030A1 (fr) | 1980-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0764899B1 (de) | Verfahren zum Konvertieren sich unterscheidender Datenformate | |
DE3587137T2 (de) | Inhaltsadressierbarer speicher. | |
DE2813128C2 (de) | Steuereinrichtung für Mikroprogrammspeicher | |
DE1931966C3 (de) | Datenverarbeitungsanlage mit Assoziativspeichern | |
DE2524046C2 (de) | Elektronische Datenverarbeitungsanlage | |
DE2912287C3 (de) | Datenverarbeitungsanlage | |
DE3751540T2 (de) | Verfahren und Vorrichtung zur Datenverarbeitung. | |
DE2055784A1 (de) | Datenverarbeitungssystem | |
DE2540975A1 (de) | Multi-mikro-prozessor-einheit | |
DE3741953A1 (de) | Multiprozessorsystem und verfahren zur arbeitslastverteilung bei einem solchen | |
DE1269393B (de) | Mikroprogramm-Steuerwerk | |
DE3856139T2 (de) | Mikroprozessor | |
DE3121742C2 (de) | Mikroprogramm-Steuereinrichtung | |
DE4334294C1 (de) | Prozessor für Zeichenketten variabler Länge | |
DE2164793A1 (de) | Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit | |
DE2718551C3 (de) | Adressenumsetzer | |
DE2926322A1 (de) | Speicher-subsystem | |
DE3689217T2 (de) | Datenverarbeitungseinrichtung mit einer Schaltung zur Prüfung der Adressgrenzen in einem virtuellen Speicher. | |
DE68925376T2 (de) | In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas | |
DE69229424T2 (de) | Adressengeneration in einer Datenverarbeitungseinheit | |
DE19628039B4 (de) | Speicheradressen-Steuerschaltung | |
DE68928041T2 (de) | Mikroprogrammgesteuerter Mikroprozessor mit Zeiger-Register und Zugriffsverfahren dafür | |
DE2830334A1 (de) | Multipliziereinrichtung | |
DE2846537A1 (de) | Mikroprozessorsystem | |
DE2425574A1 (de) | Adressierung von zeichen in einem wortorientierten system eines rechenautomaten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |