DE2206810B1 - Steuerwerk fuer einen mikroprogrammspeicher - Google Patents
Steuerwerk fuer einen mikroprogrammspeicherInfo
- Publication number
- DE2206810B1 DE2206810B1 DE19722206810 DE2206810A DE2206810B1 DE 2206810 B1 DE2206810 B1 DE 2206810B1 DE 19722206810 DE19722206810 DE 19722206810 DE 2206810 A DE2206810 A DE 2206810A DE 2206810 B1 DE2206810 B1 DE 2206810B1
- Authority
- DE
- Germany
- Prior art keywords
- microinstruction
- execution
- microprogram memory
- microinstructions
- control unit
- 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/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
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
- In der Zeichnung ist schematisch ein Mikroprogrammspeicher 1 dargestellt, der in der angegebenen Weise zeilenweise organisiert ist. In jeder Zeile ist somit ein blikrobetehlswort gespeichert. das mindestens die auszuführende Operation und die Adresse des nachfolgend auszuführenden Mikrobefehls charakterisiert. In erfindungsgemäßer Weise ist diesem Nhkrnprogrammspeicher 1 eine zusätzliche Speichereinheit 2 zugeordnet. die für jedes Wort in spezieller Zuordnung für jeden Mikrobefehl eine Zeitangabe enthält. die die Ausführungszeit des entsprechenden Mikrobefehls kennzeichnet. In vorteilhafter Ausgestaltung der Erfindung ist der Mikroprogrammspeicher hinsichtlich seiner Speicherkapazität so erweitert. daß diese Zeitangaben selbst mit den Worten im Mikroprogrammspeicher abgespeichert sind. Im einfachsten Fall genügt zur Kennzeichnung von nn verschiedenen Zeitangaben eine 2-stellige Binärkombination. Entsprechend dem dargestellten Beispiel sei angenommen. daß 22 (n = 3) verschiedene Zeitangaben genügen. eine optimale Zeitausnutzung zu erreichen. Diese acht verschiedenen Zeitangaben seien durch die Binärkombinationen 000...LLL angegeben und in dieser Form jeweils zusammen mit dem entsprechenden Mikrobefehlswort eingespeichert.
- Somit enthält ein im NIikroprogrammspeicher gespeichertes Wort zusätzlich zu den bekannten Angaben in Ausgestaltung der Erfindung eine binärcodierte dreistellige Zeitangabe. Der spezielle Code sei ein (it- #)-Dualcode.
- Die einem NIikrobefehl zugeordnete Zeitangabe wird jeweils mit diesem parallel aus dem SsIikroprogrammspeicher 1 ausgelesen und einem Decodierer (oder Datenselelitor) 3 zur Auswertung zugeführt.
- Dieser Decodierer 3 weist eine der Zahl verschiedener Zeitangaben entsprechende Anzahl von Eingängen auf. die jeweils mit einem Abgriff einer Verzögerungsschaltung 4 verbunden sind. Diese Verzögertingsschaltung hat dementsprechend ebenfalls eine der Zahl von Zeitangaben äquivalente Anzahl von Abgriffen. die in der Zeichnung mit den Buchstaben ci. . . h belegt sind. Der Decodierer 3 weist außerdem eir? der Zahl der Binärstellen (allgemein n) der Zeitangaben entsprechende Anzahl weiterer Eingänge auf.
- Der Decodierer 3 besteht aus einer logischen Verknüpfungsschaltung. die entsprechend dem Beispiel einerseits drei Eingänge zur Aufnahme der binärcodierten Zeitangabe und andererseits acht Eingänge zur Durchschaltung des der Zeitangabe entsprechenden Abgriffs der Verzögerungsschaltung aufweist.
- Diese insgesamt elf Signalleitungen werden so kom biniert. daß jeweils nur ein Abgriff der Verzögerungsschaltung 4 aktiviert ist.
- Die Abgriffe der in der Zeichnung wiedergegebenen Verzögerungsschaltung seien so angeordnet. daß der Abgriff a der kürzesten Ausführungs- zeit und der Abgriff Ii der längsten Ausffihalllgszeit entspricht. Bei symmetrischem Aufbau der Verzögerungsschaltung entspricht die längste Ausführungszeit dem Achtfachen (allgemein 2n-fachen) der kürzesten Ausführungszeit.
- Es sei angenommen, daß ein Mikrobefelil mit der codierten Zeitangabe 000 ausgelesen wird. Die Zeitangabe wird entschlüsselt und der entsprechende Abgriff a der Verzögerungsschaltung 4 durchgeschaltet. Dadurch ist der Anstoß des folgenden Mikrobefehls so festgelegt. daß der momentan ablaufende Mikrobefehl genau die benötigte Ausführungszeit zugewiesen erhält. Am Ausgang des Decodierers 3 erscheint ein Signal, das dem Steuereingang einer monostabilen Kippstufe 5 zugeführt wird. Diese ändert nun kurzzeitig ihren Zustand und gibt einen Impuls an die Verzögerungsschaltung 4 ab. Damit ist erreicht. daß dem Mikrobefehl genau die erforderliche Ausführungszeit zur Verfügung steht.
- Verweist die Folgeadrese des hier angenommenen Mikrobefehls mit der Zeitangabe 000 auf einen Mikrobefehl mit der Zeitangabe L L L. so wird diese wiederum decodiert. Am Ausgang des Decodierers 3 erscheint ein Signal. das die monostabile Kippstufe 5 aktiviert. Der am Ausgang entstehende Impuls läuft nun bis zum Abgriff Ii durch die Verzögerungsschaltung und weist dem zugehörigen Mikrobefehl wiederum die zugehörige Ausführungszeit zu.
- Der Ausgangsimpuls der monostabilen Kippstufe 5 wird jeweils auch einem Adreßregister 6 zugeleitet.
- das dem Mikroprogrammspeicher 1 fest zugeordnet ist und entsprechend den Folgeadressen den zugehörigen Mikrobefehl anstößt.
- Durch die erfindungsgemäße Zuordnung einer Zeitangabe zu den Mikrobefehlen wird somit erreicht. daß der Einsatz des jeweils folgenden Taktimpulses und damit der Anstoß des jeweils durch die Folgeadresse bestimmten Mikrobefehls zum genau richtigen Zeitpunkt erfolgt.
- Wie schon erwähnt. lassen sich durch Zeitangaben mit n Bits Xn verschiedene Taktintervalle charakterisieren. wobei der Decodierer eine l-aus-nSelektion durchführt.
- Der Vollständigkeit halber sei noch erwähnt, daß der Mikroprogrammspeicher 1 bei Arbeitsbeginn über einen Befehlsdecodierer 7 angestoßen wird. der über das Adreßregister 6 einen Makrobefehl und damit im allgemeinen den ersten Mikrobefehl dieses Makrobefehls zur .Ausführung bringt. Mit dem ersten ausgelesenen Mikrobefehl wird über die monostabile Kippstufe 5 auch die entsprechende Ausführungszeit bestimmt.
- Mit der vorliegenden Erfindung ist eine einfache Möglichkeit gegeben. die Taktimpulse den jeweiligen Mikrobefehlen zeitlich optimal anzupassen.
Claims (5)
- Patentansprüche: 1. Steuerwerk für einen Mikrobefehle und deren Folgeadressen enthaltenden Mikroprogrammspeicher, bei dem jeder Mikrobefehl durch einen Taktimpuls zur Ausführung gebracht wird, dadurch gekennzeichnet, daß eine zusätzliche Speichereinheit (2) vorgesehen ist, in welcher den Mikrobefehlen fest zugeordnete Angaben über deren Ausführungszeiten abgespeichert sind, und daß eine Verzögerungsschaltung (4) mit einer der Anzahl der verschiedenen Zeitangaben entsprechenden Mehrzahl von diesen entsprechend wählbaren Ausgängen vorgesehen ist, die die Abgabe der Taktimpulse bestimmen.
- 2. Steuerwerk nach Anspruch 1, dadurch gekennzeichnet, daß zur Kennzeichnung von 2n verschiedenen Zeitangaben n-stellige Binärkombinationen abgespeichert sind.
- 3. Steuerwerk nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Mikroprogrammspeicher (1) und die zusätzliche Speichereinheit (2) eine Einheit bilden, indem die Kapazität des Mikroprogrammspeichers um den Umfang der Zeitangaben erweitert ist.
- 4. Steuerwerk nach Anspruch 1 oder 3, dadurch gekennzeichnet, daß ein Decodierer (3) vorgesehen ist, der die mit einem Mikrobefehl ausgelesene Zeitangabe entschlüsselt und den entsprechenden Ausgang der Verzögerungsschaltung (4) durchschaltet.
- 5. Steuerwerk nach Anspruch 1 oder 4, dadurch gekennzeichnet, daß eine monostabile Kippstufe (5) vorgesehen ist, die von der Verzögerungsschaltung (4) bzw. dem Decodierer (3) angesteuert wird und die Taktimpulse abgibt.Für die Steuerung elektronischer Rechenanlagen wurden unter dem Begriff Mikroprogrammierung Verfahren entwickelt, die die Ausführung einer Reihe komplizierter Operationen dadurch ermöglichen, daß man jeder dieser Operationen einen sogenannten Makrobefehl zuordnet, der seinerseits aus einer zeitlichen Folge einfacher Elementaroperationen, den sogenannten Mikrooperationen, aufgebaut ist.Die Ausführung der Operationen wird durch Rechenbefehle angestoßen, die sinngemäß Makro-bzw. Mikrobefehle genannt werden. Ein Makrobefehl enthält im allgemeinen eine Angabe über die auszuführende Operation und eine Angabe über den Ort, an dem die der Operation zu unterwerfenden Daten zu finden sind. Demgegenüber besteht ein Befehlswort eines Mikroprogrammspeichers aus mehreren Teilen, und zwar mindestens aus einer Steuerangabe, die die auszuführende Operation spezifiziert, und einer Folgeadresse, die angibt, welches Befehlswort nach Abarbeitung des aktuellen Mikrobefehls ausgelesen und abgearbeitet werden soll. Daneben können in bekannter Weise auch Konstanten, Sprungbefehle usw. im Befehlswort eines Mikroprogrammspeichers enthalten sein.Der Mikrobefehl, die Folgeadresse und gegebenen- falls die Konstanten und Sprungbefehle bilden somit in ihrer Gesamtheit ein Mikrobefehlswort, wie es im Mikroprogrammspeicher abgespeichert ist.Bei den bekannten Anordnungen werden die Makrobefehle bzw. die ihnen entsprechenden Folgen von Mikrobefehlsworten meist in Festwertspeichern abgespeichert, da diese einerseits ein sehr schnelles Lesen gestatten und andererseits ein einmal festgelegtes Mikroprogramm nicht mehr geändert werden muß.Die vorliegende Erfindung baut auf diesem Stand der Technik auf und betrifft ein Steuerwerk für einen Mikroprogrammspeicher mit abgespeicherten Mikrobefehlen und deren Folgeadressen, bei dem jeder Mikrobefehl durch einen Taktimpuls zur Ausführung gebracht wird.Wie bereits beschrieben, setzt sich ein Makrobefehl aus einer Mehrzahl von Mikrobefehlen zusammen, die ihrerseits je nach spezifizierter Mikrooperation eine unterschiedlich lange Ausführungszeit (Zykluszeit) bedingen. Bei bekannten Mikroprogrammspeichersteuerungen wird mit einem Taktgenerator gearbeitet, dessen Taktfolgefrequenz konstant ist. Diese Anordnungen haben den Nachteil, daß bei Ausführung von Mikrobefehlen, deren Zykluszeiten kürzer sind, als es der Taktfolgefrequenz entspricht, Totzeiten auftreten. Da es andererseits wenig sinnvoll ist, die Taktfolgefrequenzen der größten auftretenden Ausführungszeit eines Mikrobefehls anzupassen, müssen gegebenenfalls Kriterien ausgewertet werden, die solchen länger dauernden Mikrobefehlen einen doppelten oder gar mehrfachen Takt zuweisen.Als Beispiel für solche unterschiedliche Zeit beanspruchenden Mikrobefehle seien erwähnt ein Mikrobefehl, der einen Schiebeschritt in einem Register auslöst, und ein Mikrobefehl, der einen Vergleich der in zwei Registern gespeicherten Daten auslöst. Es ist leicht einzusehen, daß ein Mikrobefehl der letztgenannten Art eine längere Ausführungszeit benötigt als ein Mikrobefehl der erstgenannten Art.Die Aufgabe der Erfindung besteht darin, jedem Mikrobefehl entsprechend seiner durch die auszuführende Operation bedingten Ausführungszeit so anzusteuern, daß nach Ablauf der Ausführungszeiten jeweils der durch die Folgeadresse bestimmte nachfolgend auszuführende Mikrobefehl angestoßen wird.Damit entstehen keine Totzeiten, und die Arbeitsgeschwindigkeit einer vom Mikroprogrammspeicher angesteuerten Rechenanlage ist den Mikrobefehlsfolgen optimal angepaßt.Die der Erfindung zugrundeliegende Aufgabe wird dadurch gelöst, daß eine zusätzliche Speichereinheit vorgesehen ist, in welcher den Mikrobefehlen fest zugeordnete Angaben über deren Ausführungszeiten abgespeichert sind, und daß ei--e Verzögerungsschaltung mit einer der Anzahl der verschiedenen Zeitangaben entsprechenden Mehrzahl von diesen entsprechend wählbaren Ausgängen vorgesehen ist, die die Abgabe der Taktimpulse bestimmen.Ausgestaltungen der Erfindung ergeben sich aus den Unteransprüchen.Ein Ausführungsbeispiel der Erfindung wird unter Zugrundelegung der Zeichnung an Hand der nachfolgenden Beschreibung näher erläutert.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19722206810 DE2206810C2 (de) | 1972-02-12 | 1972-02-12 | Steuerwerk für einen Mikroprogrammspeicher |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19722206810 DE2206810C2 (de) | 1972-02-12 | 1972-02-12 | Steuerwerk für einen Mikroprogrammspeicher |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2206810B1 true DE2206810B1 (de) | 1973-03-01 |
DE2206810A1 DE2206810A1 (de) | 1973-03-01 |
DE2206810C2 DE2206810C2 (de) | 1973-09-20 |
Family
ID=5835883
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19722206810 Expired DE2206810C2 (de) | 1972-02-12 | 1972-02-12 | Steuerwerk für einen Mikroprogrammspeicher |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE2206810C2 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0048971A1 (de) * | 1980-09-30 | 1982-04-07 | Computer Gesellschaft Konstanz Mbh | Schaltungsanordnung zur Ausführung von Mikrobefehlen mit unterschiedlich langen Ausführungszeiten |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3934466A1 (de) * | 1989-10-16 | 1991-05-16 | Andreas Raseghi | Selbsttaktende zentrale verarbeitungseinheit bei rechnenden maschinen |
-
1972
- 1972-02-12 DE DE19722206810 patent/DE2206810C2/de not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0048971A1 (de) * | 1980-09-30 | 1982-04-07 | Computer Gesellschaft Konstanz Mbh | Schaltungsanordnung zur Ausführung von Mikrobefehlen mit unterschiedlich langen Ausführungszeiten |
Also Published As
Publication number | Publication date |
---|---|
DE2206810C2 (de) | 1973-09-20 |
DE2206810A1 (de) | 1973-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2258460C3 (de) | Programmierbare Steueranordnung für maschinelle Vorrichtungen | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2224389A1 (de) | Speichersystem | |
DE1168128B (de) | Umschluesselungsmatrix | |
DE2756890A1 (de) | Datenverarbeitungssystem | |
DE1275800B (de) | Steuerwerk fuer datenverarbeitende Maschinen | |
DE2854782A1 (de) | Datenverarbeitungssystem | |
DE2407598C3 (de) | Vorrichtung zur automatischen Unterdrückung von in den Abtastbereich eines Zeichens hineinragenden Teilen | |
DE2213953C3 (de) | Schaltungsanordnung zum Darstellen von Zeichen auf dem Bildschirm eines Sichtgerätes | |
DE2513059A1 (de) | Zeichengenerator zur zeichendarstellung | |
DE2744321A1 (de) | Bildschirmgeraet | |
DE2720842A1 (de) | Daten-uebertragungssystem | |
DE2418921A1 (de) | Vorrichtung und verfahren zum speichern und ausfuehren von mikroprogrammen in einem datenverarbeitungssystem | |
DE2206810B1 (de) | Steuerwerk fuer einen mikroprogrammspeicher | |
DE2403669B2 (de) | SpezialComputer | |
DE2618053C2 (de) | Digitale Mustersteuereinrichtung für eine Nähmaschine | |
DE2355323A1 (de) | Programmierbares steuergeraet | |
DE1250489B (de) | I Schaltungsanordnung zur Einspei cherung von Leerstellen-Kennworten in einen assoziativen Speicher | |
DE1107432B (de) | Elektronische Rechenmaschine | |
DE2264346A1 (de) | Mehrstufiges selbstanpassendes decodiersystem fuer binaere mikrobefehle | |
DE3417816A1 (de) | Programmierbares schaltnetz | |
DE2017879B2 (de) | Speicheranordnung mit freiem Zugriff | |
DE2735874C2 (de) | ||
DE2138982A1 (de) | Digitalrechner | |
DE1774191C2 (de) | Datenverarbeitungsanlage |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E77 | Valid patent as to the heymanns-index 1977 | ||
EF | Willingness to grant licences | ||
8339 | Ceased/non-payment of the annual fee |