DE2835110A1 - FAST REAL-TIME COMPUTER EMULATOR - Google Patents

FAST REAL-TIME COMPUTER EMULATOR

Info

Publication number
DE2835110A1
DE2835110A1 DE19782835110 DE2835110A DE2835110A1 DE 2835110 A1 DE2835110 A1 DE 2835110A1 DE 19782835110 DE19782835110 DE 19782835110 DE 2835110 A DE2835110 A DE 2835110A DE 2835110 A1 DE2835110 A1 DE 2835110A1
Authority
DE
Germany
Prior art keywords
data
register
input
memory
bus
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.)
Withdrawn
Application number
DE19782835110
Other languages
German (de)
Inventor
Fleyd D Johnson
Jun Gerald Frederick Muething
Harvey Lewis Siegel
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.)
Northrop Grumman Guidance and Electronics Co Inc
Original Assignee
Itek Corp
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 Itek Corp filed Critical Itek Corp
Publication of DE2835110A1 publication Critical patent/DE2835110A1/en
Withdrawn 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/3017Runtime instruction translation, e.g. macros

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Image Processing (AREA)

Description

8 MÜNCHEN 22 ITSK CORPORATION, Maximians .-rasse *38 MUNICH 22 ITSK CORPORATION, Maximians. -Race * 3

10 Maguire Road Lexington, Massachusetss,. USA10 Maguire Road Lexington, Massachusetts ,. United States

9· August 19789 August 1978

Schneller Echtzeit-RechneremulatorFast real-time computer emulator

Unter bestimmten Umständen ist es 'wünschenswert, daß ein digitaler Hauptrechner in der Lage ist, Daten, darunter Befehlscodes, zu verarbeiten, die in einem Format vorliegen, welches mit dem Format des Hauptrechners nicht kompatibel ist. Es ist besonders wünschenswert , einen Hauptrechner in die Lage zu versetzen, Daten zu verarbeiten (Programme auszuführen), die das Format eines Zielrechners haben, und die Befehlsausführung ohne den Verlust an Verarbeitungszeit im Echtzeitbetrieb abzuwickeln. Es ist weiterhin wünschenswert, eine Hauptrechner-Emulationsmöglichkeit zu schaffen, die es gestattet, den Hauptrechner abzuwandeln, damit er eine Anzahl von Zielrechnernemuliert, ohne daß die Hardware in dem Rechner geändert zu werden braucht und lediglich ein Emulatorbauteil eines Hauptrechners durch ein anderes ersetzt zu werden braucht, was in ein oder zwei Minuten geschehen kann. Herkömmliche Emulationsverfahren gingen im allgemeinen einher mit dem ITeuentwurf der Hauptrechner-Hardware, manchmal in der Art, daß die Hauptrechner-Hardware so geändert wurde, daß sie der Hardware des Zielrechners ähnelte. Es ist daher in höchstem Maße wünschenswert, eine Emulatormöglichkeit zuIn certain circumstances it is desirable that a digital main computer is able to process data, including To process command codes that are in a format that does not match the format of the main computer is compatible. It is especially desirable to have one To enable the main computer to process data (execute programs) in the format of a target computer and handle instruction execution in real time without losing processing time. It It is also desirable to provide a host emulation facility that allows the host to modify so that it emulates a number of target computers, without the need to change the hardware in the computer and only an emulator component of a main computer needs to be replaced with another, which can be done in a minute or two. Conventional Emulation techniques generally went hand in hand with the IT redesign of host hardware, sometimes in the The way that the host hardware was changed to resemble the target's hardware. It is therefore in highly desirable to have an emulator option

909dG8/0975909dG8 / 0975

schaffen, die die Emulation verschiedener unterschiedlicher Rechnertypen ohne die Änderung von Hardware in dem Hauptrechner selbst gestattet, wobei keine Einbußen hinsichtlich der Verarbeitungszeit in Kauf genommen zu werden brauchen.create the emulation of various different Computer types allowed without changing hardware in the main computer itself, with no loss in terms of the processing time have to be accepted.

Bei bestimmten Ausführungsformen der vorliegenden Erfindung ist der Hauptrechner so ausgelegt, daß er überlappende und Pipeline-Verarbeitung bezüglich des Betriebes des Steuerteils abwickelt, indem er während jedes Mikrozyklus1 die Adresse der nächsten Mikroprogrammadresse bildet, das nächste Wort aus dem Mikroprogrammspeicher holt, während das laufend adressierte liikroprogrammspeicher-Steuerwort verarbeitet wird, um eine Überlappung der Operationen der arithmetisch-logischen Einheit einerseits und der Steuereinheit andererseits zu erreichen. Somit wird der Befehlsdatenstrom wie bei einer "Pipeline" durch ein Speicherdaten-Eingaberegister, ein Speicherdatenregister für Befehle, einen Eingabebefehlsdatenbus, einen Operationscode-Abbildungsspeicher, einen Steuerspeicher-Adressbus, einen Mikroprogramm-Steuerspeicher und ein Pipeline-Register geleitet, wobei die Ausgänge des Pipeline-Registers die arithmetischlogische Einheit und andere Register der Zentraleinheit (im folgenden als CPU bezeichnet) steuert. Demgegenüber ist das Speicherdatenregister für Daten, Vielehe direkt von der arithmetisch-logischen Einheit (im folgenden ALU genannt) ausgewertet werden, direkt an den ALU-Dateneingang angeschlossen, so daß dieser Datenweg effektiv parallel bezüglich der obenerläuterten Pipeline-AnOrdnung liegt, so daß die Verzögerung, de sich durch die längste Verzögerung von ALU-Mikroprozessor einerseits oder "Pipeline"-Befehlsdaten-Steuerteil andererseits ergibt, die im ungünstigsten Fall auftretende Mikrozyklus-Ausführungszeit wird. Bei der oben erläuterten Architektur wird eine besonders günstige getrennte (off-board) Emulator-Logikkarte in den Haupt-In certain embodiments of the present invention, the host computer is arranged to handle overlap and pipeline processing of the operation of the controller by building the address of the next microprogram address during each micro cycle 1, fetching the next word from microprogram memory while the current one addressed liikroprogrammspeicher-control word is processed in order to achieve an overlap of the operations of the arithmetic-logic unit on the one hand and the control unit on the other hand. Thus, as in a "pipeline", the instruction data stream is routed through a store data input register, a store data register for instructions, an input instruction data bus, an opcode mapping memory, a control store address bus, a microprogram control store and a pipeline register, with the outputs of the pipeline -Registers controls the arithmetic logic unit and other registers of the central processing unit (hereinafter referred to as CPU). In contrast, the memory data register for data, multiplicity directly evaluated by the arithmetic-logic unit (hereinafter referred to as ALU), is connected directly to the ALU data input, so that this data path is effectively parallel with respect to the pipeline arrangement explained above, so that the delay , de results from the longest delay of the ALU microprocessor on the one hand or the "pipeline" command data control part on the other hand, which becomes the worst-case micro-cycle execution time. With the architecture explained above, a particularly inexpensive separate (off-board) emulator logic card is installed in the main

909808/0975909808/0975

rechner eingeschoben. Diese Logikkarte durchbricht den "Pipeline"-Befehlsdatenstrom, um eine Operationscodeumsetzung (remapping) zu ermöglichen. Das Ausgangssignal der Operationscode-Abbildungsquelle wird zurückgegeben, vorzugsweise auf den Eingabebefehls-Datenbus innerhalb der "Pipeline". Wahlweise kann die Emulatorkarte auch einen Feld-Umformatierer verwenden, um die Adresscodes der ALU und des allgemeinen RegisterSatzes umzuformatieren, wenn dies erforderlich ist. Wenn in dem Adresscode des Mikroprogramm-Steuerspeichers beträchtliche Emulationsänderungen erforderlich sind, wird eine zusätzliche Decodier-Abbildungslogik an den Steuerspeicher-Adressbus in der Pipeline geschaltet, während der Befehlsstrom zu diesem Bus am Ausgang der Operationscode-Abbildungsquelle unterbrochen wird. Ist die durch die getrennte Emulator-Logikkarte benötigte Zeit zum Ausführen der Befehlscode-Übersetzung und der Feld-Umformatierung kleiner als die normale MikroZykluszeit des Hauptrechners, so ergeben sich keine Einbußen hinsichtlich der Verarbeitungszeit bei dem Emulationsvorgang. So ergeben sich durch die Verwendung einer leicht austauschbaren "off-board"-Emulator-Logikeinheit zum Durchbrechen des pipelineartig geleiteten Befehlsdatenstroms eines Rechners, der diese Architektur aufweist, die oben erläuterten Vorteile.computer inserted. This logic card breaks the "pipeline" stream of instructions to provide an opcode translation (remapping). The output of the opcode mapping source is returned, preferably on the input command data bus within the "pipeline". Optionally, the emulator card can also use a field reformatter to get the address codes reformatting the ALU and the general register set, if necessary. If significant emulation changes are required in the microprogram control store address code, additional decode mapping logic is required switched to the control store address bus in the pipeline while the instruction stream to it Bus at the output of the opcode mapping source is interrupted. Is the emulator logic card separated by the The time required to perform the command code translation and the field reformatting is less than the normal micro cycle time of the main computer no loss of processing time in the emulation process. So arise through the use an easily replaceable "off-board" emulator logic unit for breaking the command data stream routed in a pipeline manner a computer that has this architecture, the advantages explained above.

Im folgenden werden Ausführungsbeispiele der Erfindung anhand der Zeichnung näher erläutert. Es zeigen:In the following, exemplary embodiments of the invention are explained in more detail with reference to the drawing. Show it:

Fig. 1 bis 4- einen mikroprogrammierten Digitalprozessor, der besonders günstig bei der Realisierung der vorliegenden Erfindung ist; speziell zeigt Fig. 1, wie die PIg. 2 bis 4- zusammengelegt werden müssen,Figures 1 to 4- show a microprogrammed digital processor which is particularly beneficial in implementing the present invention; specifically, Fig. 1 shows how the PIg. 2 to 4 must be merged,

Fig. 5 zeigt eine schematische Darstellung eines Beispiels von Emulator-Umformatierung undFig. 5 shows a schematic representation of an example from emulator reformatting and

909808/0975909808/0975

Fig. 6 zeigt eine schematische Darstellung eines bevorzugten Beispiels der Erfindung.Fig. 6 shows a schematic representation of a preferred example of the invention.

Fig. 1 macht deutlich, wie die Fig. 2 bis 1V zusammengelegt werden sollten, damit sie bei der folgenden Beschreibung leicht überschaut werden können.Fig. 1 makes it clear how FIGS. 2 to 1 V should be merged so that they can be easily surveyed in the following description.

Zentraleinheiten (im folgenden CFU genannt) enthalten allgemein einen Arithmetikteil (ALU), einen allgemeinen Segistersatz, einen Steuerteil und eine Speicher-Schnittstelle. Die CFU kommuniziert mit einem externen Hauptspeicher und Eingabe-/Ausgabe-Geräten. Der CPU-Steuerteil (auch: Leitwerk) holt Befehle aus dem Hauptspeicher und decodiert sie, um die erforderlichen Operationen abzuwickeln; der Steuerteil erzeugt sequentiell Signale, welche die Datenwege innerhalb des Sechners zwischen der Arithmetikeinheit, dem Hauptspeicher und verschiedenen internen Speicherelementen innerhalb des Sechners definieren. Das Leiten der Daten zwischen den Hauptspeicher-Maschinenregistern und den Ausgäbeeinrichtungen wird ebenfalls durch einen solchen Steuerteil ausgeführt. Allgemein gesagt, spezielle Teile eines Mikroprogramm-Steuerspeichers werden durch einen Operationscode-Abbildungsspeicher adressiert, und Unterabschnitte des Speichers werden sequentiell durch eine Mikroprogramm-Ablauf steuerung adressiert, um sequentielle Ausgangsbefehle zu erzeugen. Eine 'Verzweigungsadressenquelle steuert weiterhin den Mikroprogramm-Steuerspeicher, um diesen derart zu adressieren, daß er einen Sprung zu einem neuen Abschnitt vollzieht, von wo aus die sequentielle Arbeitsweise fortfährt-Central units (hereinafter referred to as CFU) generally contain an arithmetic part (ALU), a general segment set, a control part and a memory interface. The CFU communicates with an external main memory and Input / output devices. The CPU control part (also: tail unit) fetches commands from the main memory and decodes them to carry out the necessary operations; the control part sequentially generates signals which the data paths within of the calculator between the arithmetic unit, the main memory and various internal memory elements within the Define Sechners. The routing of data between main memory machine registers and the output devices is also carried out by such a control part. Generally speaking, special parts of a microprogram control store are addressed by an opcode map memory, and subsections of the memory become sequential addressed by a microprogram sequencer to generate sequential output instructions. A 'branch address source further controls the microprogram control store to address this so that it makes a jump to a new section, from where the sequential operation continues -

Diese Systeme sind dem Fachmann allgemein bekannt, eine detailliertere Beschreibung findet sich in der US-PS 3 953 833. Weiterhin finden sich Einzelheiten in den US-PSen 3 859 und 3 800 293- Zur Beschreibung mikroprogrammierter Digitalprozessoren, sowie deren Bauteile und Arbeitsweise sei ver-These systems are well known to those skilled in the art, a more detailed one Description is found in U.S. Patent 3,953,833. Further details can be found in U.S. Patent 3,859 and 3 800 293- For the description of microprogrammed digital processors, as well as their components and mode of operation

9G9808/097S9G9808 / 097S

wiesen auf die folgenden Veröffentlichungen: "Designing tlie Maximum Performance into Bit-Sliced Mini Computers" von Gerald E* Muething, Jr., Seiten 91 bis 96 in "Slectroni.cs", 30.September 1976; der Artikel "The Bit Sliced Bi-Polar Microprocessor ..." von Gerald P.Muething Jr. .und Harvey L. Siegel, veröffentlicht anläßlich der National Aerospace and Electronics Conference am 19«Mai 1977 ^π Dayton, Ohio.referenced the following publications: "Designing the Maximum Performance into Bit-Sliced Mini Computers" by Gerald E * Muething, Jr., pages 91-96 in Slectroni.cs, September 30, 1976; the article "The Bit Sliced Bi-Polar Microprocessor ..." by Gerald P.Muething Jr. .and Harvey L. Siegel, published on the occasion of National Aerospace and Electronics Conference on 19 'May 1977 ^ π Dayton, Ohio.

Gemäß Fig. 2 kommuniziert der externe Hauptspeicher 1 mit Eingabe-/Ausgabe-Geräten 2 und 3· Der Hauptspeicher 1 überträgt Daten zu dem Speicherdaten-Eingaberegister 4, letzteres kommuniziert mit dem Speicherdaten-Register für Eingabedaten 6, (es enthält im allgemeinen arithmetische Daten oder Effektivadressen-Indexzeiger); das Register 6 \*;iederum überträgt variable Informationsdaten über einen Datenbus 7 an die arithmetL sch-logische Einheit 8 der CPU, die im folgenden als ALU bezeichnet werden soll. Nachdem die erforderlichen Operationen auf den Eingabedaten, die über den Datenbus an die ALU 8 gegeben werden, ausgeführt sind, werden die Ausgabedaten über den Ausgabedatenbus 9 an den "Y"-Bus 11 gegeben. Letzterer gibt die Daten über das Speicherdaten-Ausgabereigster 12 zurück zu dem externen Speicher 1. Einzelheiten der obenerläuterten Struktur sind für den Fachmann bekannt, daher soll an dieser Stelle aus Gründen der Übersichtlichkeit auf weitere Details verzichtet werden.According to FIG. 2, the external main memory 1 also communicates Input / output devices 2 and 3 The main memory 1 transfers data to the memory data input register 4, the latter communicates with the storage data register for input data 6, (it generally contains arithmetic Data or effective address index pointer); the registry 6 \ *; again transmits variable information data via a Data bus 7 to the arithmetic logic unit 8 of the CPU, which is to be referred to as ALU in the following. After performing the required operations on the input data, which are given to the ALU 8 via the data bus are executed, the output data are transmitted via the output data bus 9 given to the "Y" bus 11. The latter returns the data via the memory data output tab 12 to the external memory 1. Details of the structure explained above are known to the person skilled in the art; For the sake of clarity, further details are dispensed with.

Eine zweite Funktion des "T"-Busses besteht darin, Befehlsdaten von dem Speicherdatenregister für Befehle 14, entweder an das Befehlsregister 16 oder direkt an den Operationscode-Abbildungsspeicher (Fur-Lese-Speicher) 17 zu geben; der Operationscode-Abbildungsspeicher soll in. folgenden mit OCAS abgekürzt angesprochen werden. Die FunktionA second function of the "T" bus is to take command data from the memory data register for commands 14, either to the instruction register 16 or directly to the operation code mapping memory (fur-read memory) 17 give; the operation code mapping memory will be referred to in the following abbreviated as OCAS. The function

909808/0975909808/0975

der OCAS-Quelle bestellt darin, Teile des Mikroprogramm-Steuerspeichers 18 über einen Drei-Zustands-Steuerspeicher Adressbus 19 zu adressieren. Ein spezieller zu der OCAS-Quelle übertragener Befehl· erfordert den Zugriff auf einen speziellen Abschnitt innerhalb des Mikroprogramm-Steuerspeichers 18; dieser Abschnitt enthält mehrere Mikrobefehle, die sequentiell ausgelesen werden und sequentiell an die ALU 8, andere Maschinenregister und einer Quellenbestimmungseinrichtung für Steuerspeicher-Folgeadressen 24, gegeben werden; die QuellenbeStimmungseinrichtung 24 soll im folgenden abgekürzt mit BSF angesprochen werden. Der speziell adressierte Abschnitt des Mikroprogramm-Steuerspeichers wird sequentiell durch die Mikroprogramm-Ablauf steuerung adressiert. Dies erzeugt die oben erwähnten sequentiellen Steuerdaten, die an das Pipeline-Register 24 gegeben werden« Das Pipeline-Register 24 wiederum überträgt diese Steuerdaten über eine Leitung 5 3Jx die ALTJ 8, über eine Leitung 21 an die BSF, sowie an andere Maschinenregister, beispielsweise an das Befehlsregister 16. Anders ausgedrückt, die Adressierung des Mikroprogramn-Steuerspeichers 18 kann man sich vorstellen als die Positionierung eines Adress-"Zeigers" auf einen speziellen Abschnitt innerhalb des Speichers 18 unter Steuerung des OCAS 17, mit anschließendem zeilenweisen Fortschalten des ".Zeigers" durch die schrittweise Betätigung der Ablaufsteuerung 23. Zu verschiedenen Zeiten laden die von dem Speicher 18 erzeugten Daten, die über den Mikroprogramm-Sprungadressenbus 28 an die Verzweigungsadressenquelle 27 gelegt werden, in die Verzweigungsadressenquelle 27 geladen. Abhängig iron den durch die ALU 8 an die BSF 24- gegebenen Daten, und/oder anderen Bedingungseingängen kann die Verzweigungsadressenquelle 27 vollständig durch die Ausgangsleitung Es-4 der BSF 24 freigegeben werden = In einem solchen Fall wird derthe OCAS source orders therein parts of the microprogram control store 18 to be addressed via a tri-state control store address bus 19. A special command transmitted to the OCAS source requires access to a special section within the microprogram control store 18; this section contains a plurality of microinstructions which are sequentially read out and sequentially given to the ALU 8, other machine registers and a source determination means for control store sequence addresses 24; the source determination device 24 will be referred to in the following abbreviated to BSF. The specially addressed portion of the microprogram control store is sequentially addressed by the microprogram flow control. This generates the above-mentioned sequential control data which are given to the pipeline register 24. The pipeline register 24 in turn transmits this control data via a line 5 3Jx to the ALTJ 8, via a line 21 to the BSF, as well as to other machine registers, for example To the command register 16. In other words, the addressing of the microprogram control memory 18 can be imagined as the positioning of an address "pointer" on a special section within the memory 18 under the control of the OCAS 17, with subsequent line-by-line incrementation of the "pointer""by the step-by-step actuation of the sequence control 23. At different times, the data generated by the memory 18, which are sent to the branch address source 27 via the microprogram jump address bus 28, are loaded into the branch address source 27. Depending on the data given by the ALU 8 to the BSF 24 and / or other condition inputs, the branch address source 27 can be fully enabled through the output line Es-4 of the BSF 24 = In such a case, the

9 0 9 8 0 8/0 9 7 S9 0 9 8 0 8/0 9 7 p

Adresszeiger des Steuerspeichers 18 versetzt (d.h.. er springt) zu einem anderen Abschnitt, und dieser unterschiedliche Abschnitt wird anschließend sequentiell unter der Steuerung der Mikroprogramm-Ablaufsteuerung 23 adressiert, bis das Unterprogramm abgeschlossen ist. Die Mikroprogramm-AbIaufsteuerung 23 wird durch die Quelle 17 über die Leitung 31 gesteuert, um zu ermöglichen, daß die Mikroprogrammadresse inkrementiert, d.h. erhöht wird, oder daß der Eintritt in ein Unterprogramm bzw. der Ausgang aus einem Unterprogramm möglich ist. Diese Ablaufsteuerungsfunktionen umfassen: Inkrementieren durch . einen linearen Mikrocode, Mikro-Unterprograinmaufruf (push) Mikro-Unterprogramm-Rückkehr (pop) und Mikrocode-Verzweigung (einschließlich bedingter Vielwegverzweigung). Mit anderen Worten: diese Systeme veranlassen von Zeit zu Zeit einen Sprung zu einem gegebenen Unterprogramm in dem Kellerspeicher (stack), führen dieses Unterprogramm aus und veranlassen dann eine Rückkehr zu der vorhergehenden Abbildungsposition des Speichers 18, die in der Mikroprogramm-Ablaufsteuerung 23 gespeichert ist. Die oben erläuterten Mikroprogramm-Steuerfunktionen sind bekannt, daher sollen an dieser Stelle keine weiteren Einzelheiten erläutert werden. Hinsichtlich Einzelheiten wird auf die oben erwähnten LiteraturstelLen verwiesen. Die BSI? gibt selektiv eine der Quellen 17, 23 und 27 frei, abhängig von den der BSF 24· über die Leitung 21 zugeführten Daten, sowie den Bedingungseingängen, die durch die ALU 8 zugeführt v/erden und weiterhin abhängig von anderen externen Bedingungseingängen, wie beispielsweise einer Konsol-Anforderung "Unterbrechung". Die BSF 24- kann verschiedene Arten logischer Schaltungen, einschließlich Matrizen oder anderer ""Verzeichnisse" aufweisen. In durch den Anmelder aufgebauten Systemen wurde als BSF 24· ein 'feldprogrammierbares Logikfeld verwendet.Address pointer of the control store 18 offset (i.e. he jumps) to another section, and that different section is then sequentially under the control of the microprogram sequencer 23 until the subroutine is completed. the The microprogram flow control 23 is controlled by the source 17 controlled via line 31 to enable the Microprogram address is incremented, i.e. increased, or that entry into a subroutine or exit from a subroutine is possible. These flow control functions include: increment by. a linear microcode, micro-subprograin call (push) Micro-subroutine return (pop) and microcode branch (including conditional multi-way branching). In other words: these systems induce from time to time Time to jump to a given subroutine in the stack, execute that subroutine, and then cause a return to the previous imaging position of memory 18 stored in microprogram sequencer 23. The above explained Microprogram control functions are known, so no further details will be explained at this point. For details, reference is made to the literature references mentioned above. The BSI? selectively gives one of the Sources 17, 23 and 27 free, depending on the BSF 24 data supplied via line 21, as well as the condition inputs which are supplied by ALU 8 and continue to be depending on other external condition inputs, such as a console request "interruption". The BSF 24 can handle various types of logic circuits, including matrices or other "directories" exhibit. In systems set up by the applicant, a field-programmable logic field was used as BSF 24.

909808/0975909808/0975

Das Pipeline-Register 24- funktioniert als Verte iler für die 72-Bit-V/orte, die sequentiell durch, den Mikroprogramm-Steuerspeiclier 18 erzeugt werdenThe pipeline register 24 functions as a distributor for the 72-bit ports that are sequentially passed through the microprogram control memory 18 can be generated

Es stellt ein besonders günstiges Merkmal dar, daß der Mikroprogramm-Steuerspeicher-Adressbus 19 ein drei Zustände aufweisender Bus ist. Ein derartiger Drei-Zustands-Bus ist ausführlich, erläutert in: "Tri-state Logic In Modular Systems" RIL 1971, veröffentlicht von der National Semiconductor Corp., 2900 Semiconductor Drive, Santa-Glara, GA, 95051 von Don Fleming . Die Folge der Verwendung eines derartigen Drei-Zustands-Steuerspeicher-Adressbusses ist die, daß nur eine der Quellen 17■> 23 oder 27 effektiv an den Hikroprogramia-Steuerspeicher 18 über den Bus 19 geschaltet werden kann. Das Anschalten oder -koppeln des OGAS 17 geschieht dadurch, daß auf der fünften Freigabeleitung ES-5 der BSF 2J-V ein Freigabesignal erzeugt wird.; dieses Freigabesignal ist nur auf einer der sechs Freigabeleitungen, die auf der rechten Seite der BSE 24- dargestellt sind, vorhanden. Die Quelle 27 wird an den Bus mittels der Freigabeleitung ES—4-, die Quelle 23 mittels der Freigabeleitung ES-6 geschaltet. Wie oben bereits erwähnt wurde, ist die selektive Aktivierung einer dieser Leitungen eine Funktion der an die BSF 24- über die links unten dargestellten Leitungen zugeführten Eingangsgrößen.It is a particularly beneficial feature that the microprogram control store address bus 19 is a three state bus. Such a three-state bus is detailed in: "Tri-state Logic In Modular Systems" RIL 1971 published by National Semiconductor Corp., 2900 Semiconductor Drive, Santa-Glara, GA, 95051 by Don Fleming. The result of using such a tri-state control memory-address bus is that only one of the sources can be effectively switched ■ 17> 23 or 27 to the Hikroprogramia control memory 18 via the bus 19th The OGAS 17 is switched on or coupled by generating an enable signal on the fifth enable line ES-5 of the BSF 2J-V .; this release signal is only available on one of the six release lines shown on the right-hand side of the BSE 24-. The source 27 is switched to the bus by means of the enable line ES-4-, the source 23 by means of the enable line ES-6. As already mentioned above, the selective activation of one of these lines is a function of the input variables fed to the BSF 24 via the lines shown at the bottom left.

Fig. 5 zeigt schematisch die Übersetzung von digitalen Befehlsdaten aus dem Format des Zielrechners in das Format des Hauptrechners. Man sieht, daß der in dem Beispiel zu übersetzende Operationscode fünf Bits umfaßt, die zusammen mit einem fünf Bits umfassenden Adressierungsart-Teil genommen werden. Diese zwei Datenblöcke werden zu dem acht Bits umfassenden Operationscodeblock des Befehlsformats des Hauptrechners umgewandelt. Die Blöcke R1 und R2 desFig. 5 shows schematically the translation of digital Command data from the format of the target computer into the format of the main computer. It can be seen that the operation code to be translated in the example comprises five bits which together with a five-bit addressing type part. These two data blocks become the eight-bit operation code block converted to the command format of the host computer. The blocks R1 and R2 of the

9G9808/Q9759G9808 / Q975

Befehlsformats des Zielrechners enthalten die Adresszeiger für die allgemeinen Register; diese Adresszeiger müssen übersetzt werden in Allgemein-Register-Adresszeiger A und B des Befehlsformates des Hauptrechners, wobei diese Blöcke unterschiedliche Bitzahl haben als die Bits in den Blocken R1 und R2.Command format of the target computer contain the address pointers for the general registers; these address pointers must be translated into general register address pointers A and B. the command format of the main computer, whereby these blocks have a different number of bits than the bits in the blocks R1 and R2.

Die Bauteile nach Pig. 6 haben die letzte oder die beiden letzten Ziffern entsprechend vrie die Bauteile des obenerwähnten Prozessors mit der Befehlsdaten-Pipelinestruktur. So z.B. entspricht das Speicherdatenregister für Eingabedaten 106dem Speicherdatenregister für Eingabedaten 6 nach Pig. 2, weil 6 die letzte Ziffer des in Fig. 2 dargestellten Bauteils ist. Wie bei dem System nach Pig. 2 ist ein externer Hauptspeicher 101, der dem in Pig. 2 gezeigten Speicher 1 entspricht, an das Speicherdaten-Eingaberegister 104- gekoppelt'; letzteres ist mit dem Eingangskreis des Speicherdatenregisters für Befehle 114, welches dea Register 14 in Pig. 2 entspricht, gekoppelt.The components according to Pig. 6 have the last or the last two digits corresponding to the components of the above Processor with the instruction data pipeline structure. For example, the storage data register corresponds to input data 106 after the storage data register for input data 6 Pig. 2 because 6 is the last digit of the one shown in FIG Component is. As with the Pig system. 2 is a external main memory 101, which corresponds to that in Pig. 2 corresponds to memory 1 shown to the memory data input register 104- coupled '; the latter is connected to the input circuit of the memory data register for commands 114, which dea Register 14 in Pig. 2 corresponds, coupled.

TJm die vorliegende Erfindung am besten zu verstehen, sind Gatter G-Λ bis G-5 iD der schematischen Skizze nach Pig. verwendet. Es versteht sich jedoch, daß die obenerläuterte Drei-Zustands-Busanordnung zum Koppeln und Entkoppeln der Bauteile anstelle herkömmlicher Gatter vorzugsweise verwendet wird. Das Speicherdatenregister für Befehle 114, ist an den Eingabebefehls-Datenbus 111 über das Gatter G-1 geschaltet. Die "Pipeline" erstreckt sich weiter von dem "Y"-Bus 111 zu dem Decodierungs-Abbildungsspeicher 11?, (der als programmierbarer Hur-Lese-Speicher, PROM, ausgebildet ist) über eine direkte Verbindung .112, oder, im Pail der Adressierungsarten zweiter Ordnung, über das Befehls-Operationscode-Register 116. Die Decodierungs-Abbildungsquelle 117 wird an den Drei-Zustands-Steuerspeicher-To best understand the present invention, gates G-Λ through G-5 are iD of the Pig schematic. used. It should be understood, however, that the three-state bus arrangement discussed above for coupling and decoupling the components is preferably used in place of conventional gates. The instruction storage data register 114 is connected to the input instruction data bus 111 via gate G-1. The "pipeline" extends further from the "Y" bus 111 to the decoding mapping memory 11 ?, (which is designed as a programmable read-only memory, PROM) via a direct connection .112, or, in the Pail of the Second order addressing modes, via instruction opcode register 116. Decode mapping source 117 is applied to tri-state control store

909808/0975909808/0975

adressbus 119 über das Gatter G-2 geschaltet. Wie bei dem oben erläuterten System werden Adressdaten auf dem Bus 111 dem Hikroprogramm-Steuerspeicher 118 und anschließend dem Pipeline-Register 124 zugeführt- Ss ist wichtig zu verstehen, daß, während der Befehlsdatenstrom pipelineähnlich durch die Bauteile 114,116,117,119,118 und 124 geleitet wird, der Datenbus 100 keine Umformatierung erforderlich macht. Arithmetische Daten und die zugehörigen Effektivadressen-Indexzeiger werden direkt über den Datenbus 100 an die ALU 108 gegeben, so daß der Hauptrechner die Emulation bei seiner normalen schnellen Operationsgeschwindigkeit abwickeln kann.address bus 119 switched through gate G-2. As with that address data on the bus 111, the microprogram control memory 118 and then the Pipeline register 124 supplied- Ss is important to understand that, while the instruction data stream is routed in a pipeline-like manner through components 114, 116, 117, 119, 118 and 124, the data bus 100 does not require any reformatting. Arithmetic data and the associated effective address index pointers are sent directly to the ALU via the data bus 100 108 so that the host can run the emulation at its normal fast operating speed can.

Die oben erläuterte "off-board"-Emulator-Untereinheit 201 enthält einen Op-rationscodeübersetzer 202, und wahlweise einen Decodierungslogik-Abbildungsspeicher 203- Ein wahlweise vorhandener Feld-Umformatierer 204 kann in der Einheit 201 enthalten sein. Wie bereits erläutert wurde, wird der Befehlsstrom zwischen dem Register 114 und dem Bingabebefehlsbus 111 während der Emulation unterbrochen und die durch das Register 114 erzeugten Daten werden an den Operationscode-Übersetzer 202 und den Feld-ümformatierer 204 über einen ersten Umleitungsbus 206 gegeben» Alternativ könnte der Bus 206 fortgelassen sein, und die Register 104 und 114 könnten in der Einheit 201 zum Umleiten der Daten wiederholt vorhanden sein«. Man versteht, daß die Einheit 201 als gedruckter Schaltungsträger ausgebildet sein kann oder auch in einer anderen Form vorliegen kann. Wird die Karte 201 aus dem Rechner entfernt, könnte das Gatter G-1 auf verschiedenen Wegen in Abhängigkeit von dem Entfernen der Karte geschlossen werden, um die normale Verbindung zwischen dem Register 114 .und dem Befehlsbus 112 wieder herzustellen. Eine Anzahl von Realisierungen können vorgesehen sein, die von dem Grad der erforderlichen Umformatierung abhängen«. ImThe "off-board" emulator subunit 201 discussed above includes an op-code translator 202, and optionally a decoding logic map memory 203-an optional existing field reformatter 204 may be in the unit 201 should be included. As previously explained, the instruction stream between register 114 and the input instruction bus 111 is interrupted during emulation and the data generated by register 114 are sent to the opcode translator 202 and the field converter 204 given via a first rerouting bus 206. Alternatively, bus 206 could be omitted, and registers 104 and 114 could be present repeatedly in the unit 201 for redirecting the data ”. It will be understood that unit 201 can be designed as a printed circuit carrier or can also be present in another form. Will the card 201 removed from the computer, the gate G-1 could be on different Due to be closed depending on the removal of the card, the normal connection between the Register 114 and the command bus 112 to be restored. A number of implementations can be envisaged that include depend on the degree of reformatting required «. in the

909808/097S909808 / 097S

Beispiel nach Fig. 5 sind die zu dem ALU/allgemeinen Registersatz gehörigen Feldformate nickt "fluchtend" und müssen somit umformatiert werden. In diesem Fall würde der Feld-Umformatierer 204 an die Eingänge A und B der Registersatz-Adresse der ALU 108 geschaltet werden, während die Gatter G-3 den Registersatz -für Adressregister 221 von der ALU 108 entkoppeln würden. Bei einem anderen Zielrechnerformat braucht dies nicht notwendig zu sein, so daß die Emulatorkarte 201, die zu diesem speziellen Zielrechner gehört, den Feld-Umformatierer 204· nicht verwenden würde. Unter gewissen Umständen kann ein beträchtlicher Grad an Umformatierung erforderlich sein, so daß ein Decodierlogik-Abbildungsspeicher oder eine andere logische Schaltung 203 notwendig sein kann. In diesem Fall würde der Übersetzer 204 an die Einheit gekoppelt, um den zusätzlichen Grad an Umformatierung zu erhalten; das Gatter G-5 würde freigegeben werden, so daß der übersetzte Operationscode direkt an den Steuerspeicher-Adressbus 119 über einen zweiten Umleitungsbus 228 gegeben würde. Unter diesen Umständen würde das Gatter G-2 gesperrt, um den Befehlsdatenstrom von dem Decodierungs-Abbildungs-PROM 117 zu unterbrechen, so daß die Ausgänge des letztgenannten Speichers zum Adressieren des Mikroprogramm-Steuerspeichers 118 nicht verwendet würden, da der extensiv umformatierte Code auf dem zweiten Umleitungsbus 228 verwendet werden müßte. Wird der Operationscode zu einem geringeren Ausmaß umformatiert, würde die Decodierlogik 203 fortgelassen, oder beim Beeinflussen von dem Steuerspeicher-Adressbus 119 zugeführten Daten unwirksam gemacht werden. Typischerweise würde der Ausgangscode des Übersetzers 202 direkt über das fredgegebene Gatter G-4 auf den Eingabebefehls-Datenbus 111 gegeben werden. In diesem Fall wird G-2 freigegeben, um den DatenstromExample according to FIG. 5 are those relating to the ALU / general Field formats belonging to the register set nods "aligned" and must therefore be reformatted. In this case the field reformatter 204 would be connected to the inputs A and B of the register set address of the ALU 108, while the gates G-3 the register set -for address registers 221 would decouple from the ALU 108. This is not necessary for a different target computer format so that the emulator card 201 associated with that particular target computer is the field reformatter 204 · would not use. A significant amount of reformatting may be required in certain circumstances so that a decoding logic map memory or another logic circuit 203 may be necessary. In this case the translator 204 would be sent to the unit coupled to get the added level of reformatting; gate G-5 would be enabled so that the translated opcode is given directly to the control store address bus 119 via a second bypass bus 228 would. Under these circumstances, gate G-2 would be disabled to receive the instruction stream from the decode-map PROM 117 to interrupt, so that the outputs of the last-mentioned memory for addressing the microprogram control memory 118 would not be used because of the extensively reformatted code on the second bypass bus 228 would have to be used. If the opcode is reformatted to a lesser extent, the Decoding logic 203 omitted, or when influencing data supplied by the control store address bus 119 be made ineffective. Typically the output code of the translator 202 would be sent directly via the Gates G-4 are put on the input command data bus 111. In this case, G-2 is released to the data stream

909808/0975909808/0975

von dem Decodierungs-Abbildungsspeicher 117 auf den Steuerspeicher-Adressbus 119 zu schalten.from the decode map memory 117 to the control store address bus 119.

Bei sämtlichen Implementierungen wird G-1 gesperrt und der Befehlsdatenstrom somit stets gebrochen, und die vollen 16 Bits wurden herausgebracht. Zurückgegeben wurden: a) das übersetzte Operationscodefeld an die acht höchstwertigen Bits des T-Busses 111 und die umformatierte interne Registeradresse direkt zu den Punkten oberhalb von G-3, G-3', wobei die Gatterwege G-1 und G-3 unterbrochen und der Weg G-2 nicht unterbrochen ist, oder b) das umformatierte interne Registeradressenfeld an die acht niedrigstwertigen Bits des Y-Busses 111 und die richtige Steuerspeicher-Startadresse auf dem Bus 119 5 wobei die Wege G-1 und G-2 unterbrochen und G-3 nicht unterbrochen ist, oder c) eine Kombination der Möglichkeiten a) und b), wobei sämtliche übersetzten Daten an den Y-Bus 111 zurückgegeben v/erden und nur der Weg G-1 durch/brochen, die Wege G-2 und G3 dagegen beibehalten werden.In all implementations, G-1 is blocked and the command data stream is thus always broken, and the full 16 bits have been brought out. The following were returned: a) the translated operation code field to the eight most significant bits of the T-bus 111 and the reformatted internal register address directly to the points above G-3, G-3 ', the gate paths G-1 and G-3 being interrupted and path G-2 is not interrupted, or b) the reformatted internal register address field to the eight least significant bits of Y bus 111 and the correct control store start address on bus 119 5 with paths G-1 and G-2 interrupted and G -3 is not interrupted, or c) a combination of options a) and b), whereby all translated data is returned to Y-bus 111 and only path G-1 is interrupted, paths G-2 and G3, however, can be retained.

Auf die obige Weise können das Operationscodefeld, Adressfelder für interne Register, ein Literalfeld und ein Speicheradressen-Versetzungsfeld (displacement) irgendeines Befehlsvrort-JFormates eines Rechners neu geordnet und in das Befehlsformat des Haupt-Minicomputers codiert werden. Wenn die Verzögerung der (in der Zeichnung in Blockdiagrammform gezeigten) Emulatorlogik so groß ist, daß diese Zeit kleiner ist als ein Mikrozyklus des Prozessors, dann geht keine Verarbeitungsgeschwindigkeit verloren, wenn dieser Prozessor zum Emulieren eines anderen Rechners verwendet wird. Der Hauptrechner kann dann schnelle Echtzeitemulation durchführen. Es ist wichtig, daß ein separates Halteregister 106 für die aus dem Speicher kommenden Datenworte vorgesehen ist, welche keine Umformatierung erfordern. SomitThe opcode field, address fields for internal registers, a literal field and a Memory address displacement field (displacement) of any command format of a computer rearranged and into the Command format of the main minicomputer. When the delay of the (in the drawing in block diagram form shown) emulator logic is so large that this time is less than one micro cycle of the processor, then works no processing speed is lost when this processor is used to emulate another computer will. The main computer can then perform fast real-time emulation. It is important to have a separate holding register 106 is provided for the data words coming from the memory which do not require reformatting. Consequently

909808/Q975909808 / Q975

können diese Worte, bei denen es sick vornehmlich um arithmetische Daten handelt und die weiterhin Effektivadressenzeiger sein können, direkt an die ALU gegeben werden, ohne daß sie zuerst einer Verzögerung in der Emulator-Schaltungsanordnung 201 unterworfen werden. Dies ermöglicht, daß der Hauptrechner die Emulation bei seiner normalen hohen Operationsgeschwindigkeit durchführt. Die Gatter G-1 bis G-5 werden von Freigabe-leitungen 300 des Pipeline-Registers 124 gesteuert. Das Pipeline-Register 124 wiederum wird gesteuert durch die Daten, die durch die Emulator-Logik-Sinheit 201 erzeugt werden; letztgenannte Daten sind selbstverständlich eine Punktion der speziellen, durchzuführenden Emulation.can use these words, which are primarily arithmetic data and which continue to be effective address pointers can be given directly to the ALU without first causing a delay in the emulator circuitry 201 are subjected. This allows the host to do the emulation at its normal high speed operation. The gates G-1 to G-5 are made up of enable lines 300 of the pipeline register 124 is controlled. The pipeline register 124 in turn is controlled by the data, generated by the emulator logic unit 201; The latter data are of course a puncture of the special emulation to be carried out.

909803/Q975909803 / Q975

Claims (10)

P 12 923P 12 923 8 MÜNCHEN 228 MUNICH 22 MAXIMILIANSTRASSE -43MAXIMILIANSTRASSE -43 Paten tan sp rückeGodparents llikroprogrammierter Digital-Hauptprozessor, bei dem Befehlsdaten-Pipeline- und -Überlappungsverarbeitung angewendet wird, mit einer Befehlsquelle, einem Eingabebefehlsdatenbus, einem Mikrprogramm-Steuerspeicher und einer arithmetisch-logischen Einheit, dadurch ge te nuzeichnet, daß eine Einrichtung vorgesehen ist, um die genannten Bauteile (101,114-,111,118,108) des Prozessors in einer Tandembeziehung zu koppeln, um für den Befehlsdatenprozessor einen Pipelineaufbau zu schaffen, daß an die arithmetisch-logische Einheit (108) ein Speicherdatenregister (106) für Eingabedaten geschaltet ist, daß ein Emulator-Untersystem (201) vorgesehen ist, um die durch die Befehlsquelle (101,114) erzeugten Daten in ein Format zu übersetzen, das kompatibel mit dem Hauptprozessor ist, und daß zusammen mit der letztgenannten Einrichtung eine Anordnung (G-4·) vorgesehen ist zum Koppeln des Emulator-Untersystems (201) zwischen den Ausgangskreis der Befehlsquelle (201,214) und den Eingabebefehlsdatenbus (111). llicroprogrammed digital main processor in which Instruction data pipeline and overlap processing is applied, with an instruction source, an input instruction data bus, a microprogram control memory and an arithmetic-logic unit, thereby ge numbered, that a device is provided to the said components (101,114, 111,118,108) of the processor to couple in a tandem relationship in order for the Instruction data processor to create a pipeline structure that to the arithmetic and logic unit (108) a memory data register (106) is switched for input data that an emulator sub-system (201) is provided to the through the Translate command source (101,114) generated data into a format that is compatible with the main processor, and that together with the latter device one Arrangement (G-4 ·) is provided for coupling the emulator subsystem (201) between the output circuit of the command source (201, 214) and the input command data bus (111). 909808/0975909808/0975 TELEPON (OBS) 22 2362TELEPON (OBS) 22 2362 TELEX O5-2B38OTELEX O5-2B38O monapatmonth TELEKOP1EREHTELEKOP1EREH 2. Prozessor nach Anspruch 1 , dadurch gekennzeichnet , daß das Emulator-Untersystem (201) auf einer entfernbaren Schaltungskarte ausgebildet ist, um diese rasch nach Maßgabe der Emulationserfordernisse austauschen zu können.2. Processor according to claim 1, characterized in that the emulator subsystem (201) is formed on a removable circuit card, to this quickly in accordance with the emulation requirements to be able to exchange. 3° Prozessor nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß das Speicherdatenregister für Eingabedaten (106) direkt an die arithmetisch-logische Einheit (108) geschaltet ist, um eine Überlappung der Operationen der arithmetisch-logischen Einheit mit den Pipeline-Steueroperationen zu gestatten, um dadurch die Minimierung der Gesamtverarbeitungszeit zu unterstützen<,3 ° processor according to claim 1 or 2, characterized in that the memory data register for input data (106) is connected directly to the arithmetic-logic unit (108) in order to overlap the operations to allow the arithmetic and logic unit with the pipeline control operations, thereby minimizing to support the total processing time <, 4·. Prozessor nach wenigstens einem der Ansprüche 1 bis 3 5 dadurch gekennzeichnet , daß die Einrichtung (G-1, G-4) zum Ankoppeln des Emulationssystems gleichzeitig das Speicherdatenregister für Befehle (114) von dem Eingabebefehlsdatenbus (111) abkoppelt=4 ·. Processor according to at least one of Claims 1 to 3 5, characterized in that the device (G-1, G-4) for coupling the emulation system simultaneously decouples the memory data register for commands (114) from the input command data bus (111) 5- Prozessor nach wenigstens einem der Ansprüche 1 bis 4, dadurch gekennzeichnet , daß die Befehlsquelle ein Speicherdatenregister (114) aufweist, und daß eine Operationscode-Abbildungsquelle (203) sowie ein Steuerspeicher-Adressbus (119) vorgesehen sind=5- processor according to at least one of claims 1 to 4, characterized in that the instruction source has a memory data register (114), and that an opcode mapping source (203) and a control store address bus (119) are provided = 6. Prozessor nach wenigstens einem der Ansprüche 1 bis 5? dadurch gekennzeichnet, daß ein Operationscode-Übersetzer (202) mit einem Eingangs- und einem Ausgangskreis vorgesehen ist, daß eine erste Umleitungsanordnung (G-1) vorgesehen ist, um den Datenfluß zwischen dem Speicherdatenregister für Befehle (114) und dem Eingabebefehlsdatenbus (111) über die erste Kopplungseinrichtung zu unterbrechen und die Daten zu dem Eingangskreis6. Processor according to at least one of claims 1 to 5? characterized in that an operation code translator (202) having an input and an output circuit it is provided that a first diversion arrangement (G-1) is provided to the flow of data between the memory data register for commands (114) and the input command data bus (111) via the first coupling device to interrupt and the data to the input circuit 9098 08/097 59098 08/097 5 des Operationscodeübersetzers (202) umzuleiten, und daß eine zweite Umleitungsanordnung (G-4) vorgesehen ist zum Leiten der Daten vom Ausgangskreis des Operationscodeübersetzers (202) zu dem Eingabebefehlsdatenbusof the opcode translator (202) and that a second bypass arrangement (G-4) is provided is for routing the data from the output circuit of the opcode translator (202) to the input command data bus 7- Prozessor nach Anspruch 6, dadurch gekennzeichnet , daß die zweite Umleitungseinrichtung (G-4) Daten von dem Ausgangskreis des Operationscodeübersetzers (202) auf den Eingabebefehlsdatenbus (111) gibt, oder wenigstens teilweise über die Decodier-Abbildungseinrichtung (203) auf den Steuerspeicher-Adressbus (119) gibt, nachdem die Operationscode-Abbildungsquelle (117) von dem Steuerspeicher-Adressbus (119) durch Inaktivierung der zweiten Kopplungseinrichtung abgekoppelt ist.7- processor according to claim 6, characterized in that the second diversion device (G-4) Data from the opcode translator output circuit (202) on the input command data bus (111), or at least partially via the decoder mapper (203) on the control store address bus (119) after the opcode mapping source (117) is decoupled from the control store address bus (119) by inactivating the second coupling device. 8. Prozessor nach Anspruch 77 dadurch gekennzeichnet , daß ein Registersatz-Adressenregister (221) an den Eingabe-Befehlsdatenbus (111) gekoppelt ist, um die in der arithmetisch-logischen Einheit intern angeordneten Register über eine dritte Kopplungseinrichtung (G-3) zu adressieren, um den Ausgangskreis des Registersatz-Adressregisters mit der arithmetisch-logischen Einheit (108) zu koppeln, daß ein Feld-Formatierer (204) mit einem Eingangs- und einem Ausgangskreis vorgesehen ist, das die erste Umleitungseinrichtung (G-1) den Datenfluß zwischen dem Speicherdatenregister für Befehls (11A-) und dem Eingabebefehl sdatenbus (111) über die erste Kopplungseinrichtung unterbricht und die Daten umleitet zu den Eingangskreisen des IFeld-IOrmatierers (204) und des Operationscode-Übersetzers (202), und daß eine dritte Umleitungseinrichtung vorgesehen ist zum Zuführen der Ausgangsdaten des 3?eld-SOrniatierers (204·) zu den Registern innerhalb der arithmetisch-logischen Einheit (1O8_) , wenn das Registersatz-Adressenregister von der arithmetisch-logischen Einheit (108) durch Inaktivieren der dritten Kopplungseinrichtung abgekoppelt ist.8. Processor according to claim 77, characterized in that a register set address register (221) is coupled to the input command data bus (111) in order to carry out the internally arranged in the arithmetic and logic unit To address the register via a third coupling device (G-3) to the output circuit of the register set address register to couple with the arithmetic-logic unit (108) that a field formatter (204) with a Input and an output circuit is provided, which the first diversion device (G-1) the data flow between the memory data register for command (11A-) and the input command sdatenbus (111) interrupts via the first coupling device and redirects the data to the input circuits the I-field IOrmator (204) and the opcode translator (202), and that a third diverting device is provided for supplying the output data of the 3? Eld sequencer (204 ·) to the registers within the arithmetic-logic unit (1O8_), if the register set address register from the arithmetic-logic unit (108) by inactivating the third coupling device is disconnected. 909808/0975909808/0975 9. Prozessor nach, wenigstens einem der Ansprüche 1 bis 8, dadurch. gekennzeichnet, daß das Speicherdatenregister (104-) eine Quelle für arithmetische Daten auf v/eist, daß die Einrichtung zum Koppeln des Emulator-Untersystems das System zwischen den Ausgangskreisen der Befehlsquelle (114) und den Eingabebefehlsdatenbus (111) oder den Eingangskreis des Steuerspeichers (118) koppelt oder beides.9. Processor according to at least one of claims 1 to 8, thereby. characterized in that the memory data register (104-) is a source of arithmetic Data on v / e is that the means for coupling the emulator subsystem the system between the output circuits the command source (114) and the input command data bus (111) or the input circuit of the control memory (118) couples or both. 10. Prozessor nach mindestens einem der vorhergehenden Ansprüche, dadurch gekennzeichnet , daß die Kopplungseinrichtung für das Emulator-Untersystern (201) dieses zwischen den Ausgangskreis der Befehlsquelle ) und das Pipeline-Befehlsdaten-Untersysteia schaltet.10. Processor according to at least one of the preceding claims, characterized in that the coupling device for the emulator sub-system (201) switches this between the output circuit of the instruction source and the pipeline instruction data sub-system.
DE19782835110 1977-08-10 1978-08-10 FAST REAL-TIME COMPUTER EMULATOR Withdrawn DE2835110A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US82336577A 1977-08-10 1977-08-10

Publications (1)

Publication Number Publication Date
DE2835110A1 true DE2835110A1 (en) 1979-02-22

Family

ID=25238546

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782835110 Withdrawn DE2835110A1 (en) 1977-08-10 1978-08-10 FAST REAL-TIME COMPUTER EMULATOR

Country Status (3)

Country Link
JP (1) JPS5430752A (en)
DE (1) DE2835110A1 (en)
GB (1) GB2002553A (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5612746Y2 (en) * 1977-11-07 1981-03-24
DE3279905D1 (en) * 1981-04-13 1989-09-28 Texas Instruments Inc Microcomputer system
US4587612A (en) * 1982-10-22 1986-05-06 International Business Machines Corporation Accelerated instruction mapping external to source and target instruction streams for near realtime injection into the latter
US4691278A (en) * 1984-04-23 1987-09-01 Nec Corporation Data processor executing microprograms according to a plurality of system architectures
JPS6133546A (en) * 1984-07-25 1986-02-17 Nec Corp Information processor
DE3650602T2 (en) * 1985-04-08 1997-06-12 Hitachi Ltd Data processing system
JPH07109589B2 (en) * 1985-07-25 1995-11-22 日本電気株式会社 Instruction processing method
JPS62165242A (en) * 1986-01-17 1987-07-21 Toshiba Corp Processor
JPS6372019A (en) * 1986-09-12 1988-04-01 オムロン株式会社 Photoelectric switch
GB2203572B (en) * 1987-03-24 1991-11-27 Insignia Solutions Limited Improvements in data processing means
JPH02133746U (en) * 1990-03-19 1990-11-06
JP2004013602A (en) * 2002-06-07 2004-01-15 Handotai Rikougaku Kenkyu Center:Kk Emulation system for data driving processor

Also Published As

Publication number Publication date
JPS5430752A (en) 1979-03-07
GB2002553A (en) 1979-02-21

Similar Documents

Publication Publication Date Title
DE1774296C2 (en) Restructurable control unit for electronic digital computers
DE2755273C2 (en)
DE2357003C2 (en) Processor for a multi-program data processing system
DE2322674C3 (en) Microprogram controller
EP0097725B1 (en) Circuits in the control part of a microprogrammable processor for direct hardware execution of selected instructions
DE2318069C2 (en) Micro-programmed computer system with expansion of control functions by means of a hard-wired logic matrix
DE1549523B2 (en) DATA PROCESSING SYSTEM
DE69133571T2 (en) Data processor with the ability to execute two instructions simultaneously
DE2411963B2 (en) DATA PROCESSING SYSTEM
DE2117936B2 (en) Microprogram-controlled central unit of an electronic data processing system
DE2847934A1 (en) DATA PROCESSING DEVICE WITH A MICRO COMMAND MEMORY
DE2835095A1 (en) COUPLED, MICROPROGRAMMED PROCESSOR SYSTEM
DE2248296A1 (en) PROGRAM CONTROL DEVICE
EP0010185A1 (en) Virtual-addressing device for a computer
DE2755616A1 (en) ASYMMETRIC MULTIPROCESSOR
DE2835110A1 (en) FAST REAL-TIME COMPUTER EMULATOR
DE3114921A1 (en) DATA PROCESSING SYSTEM
DE1935944B2 (en) Control device in an electronic data processing system
DE3307194C2 (en)
DE2336676C3 (en) Device for modifying microprogram instructions
DE2747304C3 (en) Micro-command control device
DE2617485B2 (en) Circuit arrangement for data processing systems for processing micro instruction sequences
DE2245284A1 (en) DATA PROCESSING SYSTEM
DE2658950A1 (en) MICROPROGRAMMED PROCESSING UNIT AND METHOD FOR ORGANIZING IT
DE2720842A1 (en) DATA TRANSFER SYSTEM

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee