CIRCUIT FOR EXECUTING MICROINSTRUCTIONS WITH DIFFERENT EXECUTION TIMES

Abstract: 1. A circuit arrangement for the execution of microinstructions which for their function require execution times of different lengths, using a decoder stage which in dependence upon the micro-instructions in question supplies release signals subject to different delays, characterised in that a clock pulse counter (TREZ) is provided which at its output supplies a plurality of clock pulse signals (TREZ1, 2, 3...) of different frequency which are derived from an operating clock pulse train (TRECP) and which are in each case subdivided in the ratio 1 : 2 : 4..., that the n outputs of the clock pulse counter (TREZ), which each supply a clock pulse signal, are each connected to an input of the decoder stage (DEC-NZ) which comprises programmable logic circuits (FPLA), that the other inputs of the decoder stage can be supplied with signals derived from the micro-instruction and from these signals the decoder stage generates a delayed release signal which corresponds to the micro-instruction in question, in particular in respect of its particular execution time, and that the decoder stage (DEC-NZ) has 2**n outputs each of which are connected to flip-flops (TRE-FF) in which the release signals can be stored and at whose outputs there occur correspondingly assigned window signals which serve for the execution of the micro-instructions.

Description: Schaltungsanordnung zur Steuerung von Mikrobefehlen mit unterschiedlich langen Ausfuhrungszeiten Die Erfindung bezieht sich auf eine Schaltungsanordnung nach dem Oberbegriff des Hauptanspruches. Es sind Datenverarbeitungsanlagen bekannt, bei denen für die Ausführung verschiedener Mikrobefehle, d.h. für verschieden lang dauernde Elementaroperationen, eine stets gleich grosse Zeitspanne vorgegeben wird. Feste Zeitvorgabe bedeutet aber, dass die Dauer der Zeitspanne durch die jeweils langsrste Elementaroperation bestimmt wird. Da jedoch die meisten Elementaroperationen kürzer, oft sogar sehr viel kürzer sind, geht durch diese Betriebsweise sehr viel Zeit verloren. Bei einer anderen bekannten Lösung ist für jede Art von Mikrobefehlen eine eigene Zeitschaltkette vorgesehen. Diese Massnahme ist schaltungstechnisch sehr aufwendig und darüber hinaus nicht fein genug abstimmbar, da in Anbetracht der Vielfalt der Mikrobefehle nur. eine Grobunterteilung in wenige Gruppen mit entsprechend zugeordnetem Taktraster möglich ist. Schrittweise Verbesserungen und Optimierungen während der Entwicklungsphase sind hier nur bei entsprechender Änderung der Hardware möglich. Der vorliegenden Erfindung liegt daher die Aufgabe zugrunde, für die Verarbeitung von Mikrobefehlen mit unterschiedlich langer Ausführungszeit eine möglichst op timale und vom Aufwand her im Vergleich zu bekannten Schaltungen möglichst günstige Lösung anzugeben. Diese Aufgabe wird erfindungsgemäss mit den kennzeichnenden Merkmalen des Hauptanspruches gelöst. Mit einer derart ausgebildeten Schaltungsanordung ist eine sogenannte Taktraster-Entschlüsselungseinrichtung geschaffen, die in vorteilhafter Weise an die jeweils unterschiedlichen Ausführungszeiten der zu verarbeitenden Mikrobefehle angepasst werden kann. Für den Fall, dass der die Mikrobefehle verarbeitende Prozessor sowohl in einem Normalzustand als auch beispielsweise zu Wartungszwecken - in einem Sonderzustand betrieben werden soll, ist eine gemäss den Merkmalen des Anspruches 5 ausgestaltete Weiterbildung der erfindungsgemässen Schaltuzrgsanordnung mit Vorteil anwendbar. *) Im folgenden wird ein Ausführungsbeispiel der Erfindung anhand der Zeichnung näher erläutert Dabei zeigen FIG 1 den prinzipiellen Aufbau eines Prozessors zur Verarbeitung von Mikrobefehlen mit unterschied lich langen Ausfüurungszeiten, FIG 2 ein Blockschaltbild einer Schaltungsanordnung zur Taktraster-Entschlüsselung gemäss der Erfindung, FIG 3 den Zusammenhang zwischen festem Taktrarter und Taktraster-Entschlüsselungssignalen. Der in FIG 1 schematisch dargestellte Prozessor arbeitet mit einem Datenbus I;BUS, der den Datenaustausch zwischen den einzelnen Elementen des Prozessors ermöglicht. Ein vom Datenbus I-BUS unabhängiger Adress-Datenpfad ist für die Steuerung der Mikrobefehlsfolgen vorgesehen. Hierzu gehört ein sogenannter Sequenzer-Bus S-BUS, über *) Weitere vorteilhafte Ausgestaltungen des Erfindungsgedankens sind den übrigen Unteransprüchen entnehmbar. den der Mikrobefehlsspeicher M-SP adressiert wird. Der Mikrobefehlsspeicher M-SP legt seine Daten in ein Mikrobefehlsregister F-REG ab. Das Mikrobefehlsregister F-REG ist mit einer Verarbeitungseinheit VE, einem Sequenzer SQ, einem Datenselektor SD-MUX, einem Mikrobefehls-Rechenwerk MALU und einem Taktraster-Entschlüsseler TRE verbunden. Der Sequenzer SQ dient zur Steuerung der Mikrobefehlsfolge. Dieser Sequenzer SQ ist ein gangsseitig mit einem Datenselektor SD-MUX verbunden, der eine Auswahl von Adressquellen für Sprungbefehle vornimmt. Ausgangsseitig ist ein Mikrobefehls-Adressenregister MAR angeschaltet, das zur Zwischenspeicherung der Ausgangsdaten des Sequenzers SQ dient. Schliesslich ist noch ein Mikrobefehls-Rechenwerk MALU vorgesehen, in welchem die Berechnung der Sprungadressen für Relativsprünge stattfindet. Eine Schaltungsanordnung für einen sogenannten Takt raster#Entschlüsseler ist in FIG 2 dargestellt. Gesteuert wird diese Schaltung durch einen Zähler TREZ, der mit einem vom Grundtakt abgeleiteten Zählertakt TREZCP' betrieben wird und der aus drei Ausgangssignalen TREZ1, TREZ2, TREZ3 drei verschiedene Taktsignale liefert, deren Taktfrequenzen sich jeweils im Verhältnis 1 : 2 voneinander unterscheiden. Die drei Zählerausgänge TREZ1, 2, sind mit drei Eingängen einer Decodierstufe#DEC-NZ verbunden, die vorzugsweise aus sogenannten freiprogrammierbaren Logikschaltungen FPLA gebildet ist. Eine Logikschaltung FPLA ermöglicht die logische Verknüpfung von z.B. 16 Eingangssignalen in 48 UND-Gleichungen und die Abbildung auf 8 Ausgangssignale durch eine ODER-Verknüpfung aus den 48 Gleichungen. Die Decodierstufe DEC NZ kann aus mehreren, über ihre Freigabe-Eingänge CE gegeneinander verriegelbaren Logikschaltungen FPLA bestehen. Die Abarbeitung eines Mikrobefehles erfolgt nun in der Weise, dass am Anfang ein Mikrobefehl aus dem Mikro befehlsspeicher M-SP in ein Mikrobefehlsregister F-REG eingegeben wird. Aus diesem Mikrobefehlsregister F-REG werden dann die Mikrobefehle entweder direkt oder mit zum Teil vordekodierten Bits sowie Zustandsmeldungen ZM der Decodierstufe DEC-NZ angeboten. Je nach Art des Befehls ergibt sich eine unterschiedlich lange Verarbeitungsdauer, die durch eine entsprechende Verschlüsselung der Eingangssignale Fxx in der Decodierstufe DEC-NZ berücksichtigt wird. Durch die drei höchstwertigen Bits eines Mikrobefehls werden z.B. acht Gruppen des Mikroprogramm-Operationscodes unterschieden. Innerhalb der Gruppen können über gegebenenfalls vorverschlüsselte Signale weitere Klassen unterschieden werden. Zusätzlich wird die Decodierung durch die Ausgangssignale des Zählers gesteuert, wobei die jeweiligen Ergebnisse bzw. Gleichungen der Decodierung stets nur bei einem bestimmten Zählerstand erfüllt werden. Dann entstehen an den Ausgängen der Decodierstufe DEC-NZ Freigabesignale. Der Zusammenhang zwischen den Ausgangssignalen TREZ 1, 2, 3 und den zeitverma#enden Signalen in den Gleichungen der Decodierstufe DEC-NZ ist in FIG 3 dargestellt. Diese FIG 3 zeigt im oberen Teil den Betriebstakt tRECP des Zählers TREZ und die an den drei Ausgängen TREZ 1, 2, 3 auftretenden Taktsignale, die jeweils im Verhältnis 1 : 2 unterteilt sind. Der Betriebstakt TRECP wird aus dem Grundtakt TG erzeugt und kann abhängig von Zuständen des Prozessors und Ergebnissen des Taktraster-Entschlüsselers mit dem Sperrsignal TRESTP an- und abgeschaltet werden. Im unteren Teil der FIG 3 sind die aufgrund der verschiedenen Pegelstände - H (HIGH), L (LOW) - sich ergebenden, entsprechend unterschiedlich verzögerten Zeitbereiche dargestellt, zu denen Freigabesignale am Ausgang der Decodierstufe DEC-NZ erzeugt werden können. Zurückkehrend zu FIG 2 werden schliesslich die Freigabesignale mit dem Betriebstakt TRECP in je einem Flipflop TRE-FF abgespeichert. Die Ausgangssignale der Flipflops TRE-FF stellen z.B. 80 ns lange Fenstersignale dar, aus denen über die Gatter TRE-G, mit exakt vermassten Takten, die Steuersignale xxCP sowie die Freigabesignale xxEN ausgeblendet werden. Das Startsignal EOANF für eine neue Mikrobefehls-Verarbeitung wird in einem mit dem Betriebstakt TRECP getakteten Flipflop EO-FF nur dann erzeugt, wenn vorher. ein Elementaroperation-Endesignal EOEND vorhanden war. Am Ende einer Elementaroperation wird mit dem Signal TREZL der Zähler TREZ normiert. Die Steuersignale können gegebenenfalls durch Sperrsignale SPS unterdrückt werden. Neben dem Normalzustand kann der Prozessor gemäss FIG 1 auch in einem Sonderzustand, z.B. für Wartungszwecke oder für eine Unterbrechungssteuerung, betrieben werden. Zu diesem Zweck ist in der Taktraster-Entschlüsselungsschaltung gemäss FIG 2 #eine zweite Decodierstufe DEC-SZ vorgesehen, die bezüglich der Ausgangssignale TREZ 1, 2, 3 des Zählers TREZ parallel zur ersten ¯Decodierstufe DEC-NZ geschaltet ist. Die übrigen Eingänge zur zweiten Decodierstufe DEC-SZ ¯ sind mit Signalen CBUSxx des Steuerbusses sowie mit Zustands-Meldesignalen ZM beschaltet. Die Betriebsart - Sonderzustand SZ bzw. Normalzustand NZ - wird in einem Flipflop FF gespeichert, dessen komplementäre Ausgänge TREADR jeweils auf die Freigabeeingänge der beiden Decodierstufen DEC-NZ, DEC-SZ wirken. Wenn das Flipflop FF zurückgesetzt ist, wird der Prozessor im Sonderzustand betrieben. Der Zähler TREZ wird jeweils am Ende einer Elementaroperation im Normalzustand, oder durch Steuersignale im Sonderzustand über ein Steuersignal TREZL mit HIGH vorbesetzt, d.h. normiert. Dieses ist in FIG 3 gestrichelt dargestellt. Je nach Betriebsart entstehen ferner an den Ausgängen der Decodierstufen DEC-NZ und DEÇ-EZ zu vorbestimmten Zeiten Freigabesignale, die dem Sonderzustand (SZ), dem Normalzustand (NZ) oder beiden Zuständen (GZ)- gemeinsam zugeordnet sind. 3 Figuren 6 Patentansprüche

Claims: Patentansprüche 1. Schaltungsanordnung zur Steuerung von Mikrobefehlen, die für ihre Funktion unterschiedlich lange Ausführungszeiten beanspruchen, d a d u r c h g e.k e n n z e i c h n e t , dass ein Taktzähler (TREZ) vorgesehen ist, der ausgangsseitig mehrere, aus einem Betriebstakt (TRECP) abgeleitete Taktsignale (TREZ 1, 2, 3,...) liefert, dass die jeweils ein Taktsignal liefernden Ausgänge des Taktzählers (TREZ) mit je einem Eingang einer aus frei programmierbaren Logikschaltungen (FPLA) gebildeten Decodierstufe (DEC-NZ) verbunden sind, dass die übrigen Eingänge der Decodierstufe mit gegebenenfalls vordecodierten Bits (Fxx) aus dem Mikrobefehl sowie mit Zustands Meldesignalen (ZM) beschaltbar sind und dass an den Ausgängen der Decodierstufe einzelne, den jeweiligen Mikrobefehlen zugeordnete sowie deren jeweiliger Ausführungszeit entsprechend verzögerte Freigabesignale auftreten, die in einzelnen Flipflops (TRE-FF) speicherbar sind, an deren Ausgängen entsprechend zugeordnete, der Steuerung einer Verarbeitungseinheit dienende Fenstersignale auftreten. 2. Schaltungsanordnung nach Anspruch 1, d a d u r c h g e k e nn z e i c h n e t, dass die Flipflops (TREFF) mit Gattern (TRE-G) verbunden sind, an deren Ausgängen, den einzelnen Mikrobefehlen zugeordnete zeitvermassende Steuersignale ausblendbar sind. 3. Schaltungsanordnung nach Anspruch 2, d a d u r c h g e k e n n z e i c h- n e t , dass die Gatter (TRE-G) jeweils Sperrsignal-Eingänge aufweisen, über die Sperrsignale zur Unterdrückung einzelner Steuersignale zuführbar sind. 4. Schaltungsanordnung nach einem der vorhergehenden Ansprüche, d a d u r c. h g e k e n n z e i e h n e t dass die an den Ausgängen des Zählers (TREZ) auftretenden Taktsignale (TREZ 1, 2, 3,...) jeweils im Verhältnis 1 : 2 unterteilt sind. 5. Schaltungsanordnung nach einem der vorhergehenden Ansprüche, d a d u r c h g e k e n nz e i c h n e t dass eine zweite Decodierstufe (DEC-SZ) vorgesehen ist, die eingangsseitig bezüglich der Ausgangssignale (TREZ 1, 2, 3,...) des Zählers (TREZ) parallel zur ersten Decodierstufe (DECK NZ) geschaltet ist und dass die Freigabe Eingänge (CE) der beiden Decodierstufen mit den komplementären Ausgängen (TREADR) eines die Betriebsart (Normalzustand NZ, Sonderzustand SZ) des die Befehle verarbeitenden Prozessors steuernden Flipflops (FF) verbunden sind. 6. Schaltungsanordnung nach Anspruch 5, d a d u r c h g g e k e n n z e i c h n e t , dass der Betriebstakt (TRE-CP) durch ein von Zuständen des Prozessors und/oder Ergebnissen des Taktraster-Entschlüsselers steuerbares Sperrsignal (TRESTP) an- bzw. abschaltbar ist.

Inventors: VOIGT, HEINZ
Applicants: COMPUTER GESELLSCHAFT KONSTANZ MBH
Application year: 1981
Main classification: G06F9
IPC codes: G06F9