DE4232053C1 - Schaltung zur Emulationsbeschleunigung - Google Patents

Schaltung zur Emulationsbeschleunigung

Info

Publication number
DE4232053C1
DE4232053C1 DE19924232053 DE4232053A DE4232053C1 DE 4232053 C1 DE4232053 C1 DE 4232053C1 DE 19924232053 DE19924232053 DE 19924232053 DE 4232053 A DE4232053 A DE 4232053A DE 4232053 C1 DE4232053 C1 DE 4232053C1
Authority
DE
Germany
Prior art keywords
memory
latches
emulation
register
data 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.)
Expired - Fee Related
Application number
DE19924232053
Other languages
English (en)
Inventor
Klaus Nagel
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Priority to DE19924232053 priority Critical patent/DE4232053C1/de
Application granted granted Critical
Publication of DE4232053C1 publication Critical patent/DE4232053C1/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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)
  • Executing Machine-Instructions (AREA)

Description

Bei einer Emulation wird der Maschinencode eines Rechners auf einem anderen Rechner interpretiert. Damit ist es möglich, die für den fremden Rechner entwickelten System- und Anwenderprogramme auf dem eigenen Rechner zu benutzen. Sind die beiden Rechner nicht befehlskompatibel, so kostet es viel Zeit, die Befehle zu dekodieren. Die Register der emulierenden Maschine werden für die Steuerung der Emulation gebraucht; die Register der emulierten Maschine müssen deshalb im Speicher nachgebildet werden mit dem Nachteil des langsameren Zugriffs.
Der Erfindung liegt die Aufgabe zugrunde, eine Schaltungs­ anordnung zur Emulationsbeschleunigung anzugeben.
Diese Aufgabe wird durch eine Schaltungsanordnung zur Be­ schleunigung der Emulation eines Befehlssatzes eines Rechners auf einem Datenverarbeitungssystem mit Merkmalen nach Anspruch 1 gelöst.
Bei dieser Schaltungsanordnung ist mindestens ein Register vorgesehen, in welches bzw. welche ein zu emulierender Befehl geschrieben wird. Weiterhin ist mindestens ein Latch vorgesehen, mit welchem bzw. welchen die Ausgänge der Register verbunden sind. Ferner ist ein Speicher vor­ gesehen, der den Registersatz des zu emulierenden Rechners enthält. Ein Demultiplexer verbindet wahlweise den Ausgang des Speichers oder die Ausgänge der Latches mit einem Datenbus.
Fig. 1 zeigt eine schematische Darstellung der erfindungs­ gemäßen Schaltungsanordnung.
Im folgenden wird die Erfindung anhand eines bevorzugten Ausführungsbeispiels beschrieben.
Die Erfindung beschleunigt die Emulation bei der Befehls­ decodierung und beim Zugriff auf die Register der emulierten Maschine.
Befehlsdecodierung
Der Code eines zu emulierenden Befehls wird in ein Hardware-Register geladen. Die Ausgänge dieses Registers werden mit mehreren Latches so verbunden, daß die einzelnen Bestandteile des Befehls (z. B. Operationscode, Registeradressen, Speicheradressen, Conditioncode) mit Lesebefehlen in die Register des emulierenden Rechners ge­ laden werden können. Beim Übergang vom Befehlsregister zu den Latches können die Befehlsteile in eine Form gebracht werden, die für die Weiterverarbeitung im emulierenden Rechner optimiert ist, etwa durch Permutieren, Invertieren, Verschieben oder Umsetzen.
Registerzugriffe
Der Registersatz der emulierten Maschine wird in die Be­ schleunigungsschaltung eingebaut und so mit den Latches verbunden, daß mit einem einzigen Schreib- oder Lesebefehl auf ein durch den emulierten Befehlscode adressiertes Register zugegriffen werden kann.
Die Schaltung ist mit den Daten-, Adreß- und Steuer­ leitungen des Rechnerbusses verbunden. Zu Beginn der Emulation eines Befehles wird der Befehlscode in das Re­ gister 1 geschrieben und bei längeren Befehlen in den Registern 2 und 3 fortgesetzt. Dazu wird der Befehl auf den Datenbus D gelegt, die Steuerlogik 4 erzeugt aus dem Adreß- und Steuerteil (A, C) des Busses die Schreibpulse für die Register 1 bis 3. Die Ausgänge der drei Befehls­ register sind so mit den Latches 5 bis 8 verbunden, daß alle relevanten Teile des Befehls in einer für die Weiter­ verarbeitung geeigneten Ausrichtung auf den Datenbus ge­ legt werden Können. Die Steuerlogik 4 erzeugt dazu das Auswahlsignal (Output Enable) für das entsprechende Latch (5-8) und schaltet den Demultiplexer 10 auf den unteren Eingang.
Der Speicher 9 enthält den Registersatz der zu emulierenden Maschine. Um ein Register zu lesen, wird das Latch (5-8), welches die Registeradresse enthält, aktiviert und der Demultiplexer 10 auf den Ausgang des Registersatzes 9 geschaltet. Zum Schreiben eines Registers wird der Inhalt auf den Datenbus D gelegt. Die Steuerlogik 4 wählt das Latch mit der Registeradresse aus und erzeugt den Schreibpuls für den Speicher 9.

Claims (3)

1. Schaltungsanordnung zur Beschleunigung der Emulation eines Befehlssatzes eines Rechners auf einem Datenverarbeitungssy­ stem mit folgenden Merkmalen:
  • a) Es sind mehrere Register (1, 2, 3) vorgesehen, in welche ein zu emulierender Befehl geschrieben wird;
  • b) es sind mehrere Latches (5, 6, 7, 8) vorgesehen, mit wel­ chen die Ausgänge der Register so verbunden sind, daß ein­ zelne Bestandteile eines Befehls mit Lesebefehlen in die Register des Datenverarbeitungssystems geladen werden kön­ nen;
  • c) es ist ein Speicher (9) vorgesehen, der den Registersatz des zu emulierenden Rechners enthält;
  • d) ein Demultiplexer (10) verbindet wahlweise den Ausgang des Speichers (9) oder die Ausgänge der Latches (5, 6, 7, 8) mit einem Datenbus (D).
2. Schaltungsanordnung nach Anspruch 1, bei der eine Steuerlogik (4) ein Auswahlsignal zur Auswahl eines Latches erzeugt und den Demultiplexer (10) auf die Ausgänge der Latches schaltet.
3. Schaltungsanordnung nach einem der vorhergehenden An­ sprüche, bei der eine Steuerlogik (4) das zu einer Registeradresse gehörende Latch auswählt und einen Schreibpuls für den Speicher (9) erzeugt.
DE19924232053 1992-09-24 1992-09-24 Schaltung zur Emulationsbeschleunigung Expired - Fee Related DE4232053C1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE19924232053 DE4232053C1 (de) 1992-09-24 1992-09-24 Schaltung zur Emulationsbeschleunigung

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE19924232053 DE4232053C1 (de) 1992-09-24 1992-09-24 Schaltung zur Emulationsbeschleunigung

Publications (1)

Publication Number Publication Date
DE4232053C1 true DE4232053C1 (de) 1993-11-25

Family

ID=6468764

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19924232053 Expired - Fee Related DE4232053C1 (de) 1992-09-24 1992-09-24 Schaltung zur Emulationsbeschleunigung

Country Status (1)

Country Link
DE (1) DE4232053C1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0786722A1 (de) * 1996-01-25 1997-07-30 International Business Machines Corporation Verfahren und Anordnung zur Leistungsverbesserung von Emulation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4780819A (en) * 1985-04-03 1988-10-25 Nec Corporation Emulator system utilizing a program counter and a latch coupled to an emulator memory for reducing fletch line of instructions stored in the emulator memory
US4839797A (en) * 1984-07-25 1989-06-13 Nec Corporation Microprocessor compatible with any software represented by different types of instruction formats

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4839797A (en) * 1984-07-25 1989-06-13 Nec Corporation Microprocessor compatible with any software represented by different types of instruction formats
US4780819A (en) * 1985-04-03 1988-10-25 Nec Corporation Emulator system utilizing a program counter and a latch coupled to an emulator memory for reducing fletch line of instructions stored in the emulator memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0786722A1 (de) * 1996-01-25 1997-07-30 International Business Machines Corporation Verfahren und Anordnung zur Leistungsverbesserung von Emulation

Similar Documents

Publication Publication Date Title
DE2456578C2 (de) Datenverarbeitungsanlage
EP0014850B1 (de) Einrichtung zur Erweiterung des Standard-Makroinstruktionssatzes in einer Datenverarbeitungsanlage
DE1499722B1 (de) Einrichtung zur modifizierung von informationswoertern
DE2813128A1 (de) Mikroprogrammspeicher
DE3303488A1 (de) Digitales signalverarbeitungssystem
DE2524046A1 (de) Elektronische datenverarbeitungsanlage
DE2725396B2 (de) Pufferspeicher
DE3911721C2 (de)
DE2758829A1 (de) Multiprozessor-datenverarbeitungssystem
DE2359920A1 (de) Adressiereinheit fuer einen gemeinschaftsspeicher
DE2433436A1 (de) Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer
DE2064473B2 (de) Schaltung zur Bestimmung der Adresse einer in einem Speicher einer Datenverarbeitungsanlage enthaltenden, gesuchten Information
DE4232053C1 (de) Schaltung zur Emulationsbeschleunigung
DE1799012C3 (de) Registereinrichtung zur Erleichterung des Wechsels von Teilprogrammen und Teilprogrammschritten in einem elektronischen Rechner
DE4222275A1 (de) Parallelprozessor und betriebsverfahren eines solchen
DE3711209A1 (de) Datenprozessor mit fruehzeitigem op-code-vergleich
DE2710436A1 (de) Datenverarbeitungseinrichtung
DE3139421C2 (de)
DE3101270A1 (de) Rechnersystem zur kombinierten wortverarbeitung und bitverarbeitung
DE2062791C (de) Assoziativspeicher
SU1151962A1 (ru) Микропрограммное устройство управлени
DE2856768A1 (de) Prioritaets-vektor-unterbrechung mit einer vorrichtung zur direkten herstellung einer adressenverzweigung
DD246388A1 (de) Schaltungsanordnung zur tastatur- und anzeigeansteuerung
DE1774164C (de) Datenverarbeitungsanlage mit mehreren gleichzeitg tatigen Verarbeitungseinheiten
DE2501121C3 (de) Mikroprogrammgerät für eine Datenverarbeitungseinrichtung

Legal Events

Date Code Title Description
8100 Publication of the examined application without publication of unexamined application
D1 Grant (no unexamined application published) patent law 81
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee