DE68927306T2 - Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen On-Chip-Speicherkapazitäten - Google Patents

Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen On-Chip-Speicherkapazitäten

Info

Publication number
DE68927306T2
DE68927306T2 DE68927306T DE68927306T DE68927306T2 DE 68927306 T2 DE68927306 T2 DE 68927306T2 DE 68927306 T DE68927306 T DE 68927306T DE 68927306 T DE68927306 T DE 68927306T DE 68927306 T2 DE68927306 T2 DE 68927306T2
Authority
DE
Germany
Prior art keywords
chip
memory
address
calculation
access
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
DE68927306T
Other languages
English (en)
Other versions
DE68927306D1 (de
Inventor
Toshinori C O Nec Corpo Tamura
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.)
NEC Electronics Corp
Original Assignee
NEC Corp
Nippon Electric Co Ltd
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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Publication of DE68927306D1 publication Critical patent/DE68927306D1/de
Application granted granted Critical
Publication of DE68927306T2 publication Critical patent/DE68927306T2/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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE

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)
  • Multi Processors (AREA)
  • Memory System (AREA)
  • Microcomputers (AREA)

Description

  • Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen Auf-Chip-Speicherkapazitäten
  • Hintergrund der Erfindung Feld der Erfindung
  • Die Erfindung betrifft ein Emulationssystem nach dem Oberbegriff von Anspruch 1.
  • Ein solches Emulationssystem ist aus "Electronic Design", Vol 34, Nr. 28, vom 27.11.1986, Seiten 41 bis 42, Hasbrouck Heights, NJ, US; D. Tunick: "32-bit tools target 68020 development", bekannt.
  • Beschreibung des Stands der Technik
  • Zur Zeit sind sog. Emulationssysteme zur Entwicklung von Programmen für verschiedene Mikrocomputer unverzichtbar. Jedoch ist das bekannte Emulationssystem unter der Annahme ausgebildet, daß ein Zielmikrocomputer, der emuliert werden soll, einen Auf-Chip-Speicherbereich mit einer festen Kapazität von z.B. 256 Bytes hat, und daß ein Speicherbereich, der die 256 Bytes übersteigt, als ein externer Speicher vorgesehen ist. Deshalb wird, wenn ein Zielmikrocomputerchip mit einem Auf-Chip-Speicherbereich von z.B. 512 Bytes emuliert wird, auf eine erste Hälfte der 512 Bytes als Auf- Chip-Speicherzugriff zugegriffen, aber auf die zweite Hälfte der 512 Bytes wird als externer Speicherzugriff zugegriffen. Mit anderen Worten kann die zweite Hälfte der 512 Bytes nicht geeignet als Auf-Chip-Speicherzugriff emuliert werden.
  • Bei der Technologie moderner integrierter Schaltkreise ist es andererseits kürzlich möglich, daß LSIs (Large scale integrated) auf einen Auf-Chip-Speicher mit zwei Zyklen zugreifen, obwohl sie weiterhin fünf Zyklen für den Zugriff auf einen externen Speicher (nicht der Auf-Chip-Speicher) benötigen. Wenn die oben erwähnte zweite Hälfte der 512 Bytes als ein externer Speicherzugriff zugegriffen werden, kann die Emulation nicht durch das Emulationssystem mit derselben Zugriffszeit durchgeführt werden, wie in dem Fall des Zielmikrocomputers.
  • Zusammenfassung der Erfindung
  • Es ist dementsprechend eine Aufgabe der Erfindung, ein Emulationssystem zu schaffen, das den obenerwähnten Fehler des bekannten überwindet.
  • Eine weitere Aufgabe der Erfindung ist es, ein Emulationssystem zu schaffen, das in der Lage ist, einen Zugriff auf einen Auf-Chip-Speicher eines Zielmikrocomputers, der auch eine große Speicherkapazität hat, mit der Zugriffsgeschwindigkeit des Zielmikrocomputers zu ermöglichen.
  • Diese und andere Aufgaben der Erfindung werden durch die Merkmale des Anspruchs 1 gelöst.
  • Mit der obengenannten Anordnung wird die Größe oder die Skala des Auf-Chip-Speicherbereichs nicht innerhalb des Berechnungschips gesetzt, sondern das Bestimmungsmittel bestimmt, ob der Raum, auf den durch den Berechnungschip zugegriffen werden soll, innerhalb des Auf-Chip-Speicherbereichs des Zielmikrocomputers ist oder nicht, und das Ergebnis der Bestimmung wird an den Berechnungsschip übermittelt. Diese Bestimmung kann z.B. durch Dekodieren einer Adresse durchgeführt werden, die von dem Berechnungschip ausgegeben wird. Deshalb kann die Größe oder Skala, die als Auf-Chip-Speicherbereich behandelt werden soll, frei in dem Bestimmungsmittel gesetzt werden, und dementsprechend kann der Emulationschip verschiedene Zielspeicher mit yerschiedenen Auf-Chip-Speicherkapazitäten emulieren.
  • Die oben genannten und weitere Aufgaben, Merkmale und Vorteile der Erfindung werden aus der folgenden Beschreibung der bevorzugten Ausführungsformen der Erfindung unter Bezug auf die beiliegenden Zeichnungen deutlich.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein Blockdiagramm eines herkömmlichen Emulationssystems;
  • Fig. 2 ist eine Zeitsteuerungstafel, die den Betrieb des herkömmlichen Emulationssystems in dem Fall des Zugriffs auf den Auf-Chip-Speicherbereich darstellt;
  • Fig. 3 ist eine Zeitsteuerungstafel, die den Betrieb des herkömmlichen Systems in dem Fall des Zugriffs auf den externen Speicher darstellt;
  • Fig. 4 ist ein Blockdiagramm einer ersten Ausführungsform des erfindungsgemäßen Emulationssystems;
  • Fig. 5 ist eine Zeitsteuerungstafel, die den Betrieb des in Fig. 4 gezeigten Emulationssystems in dem Fall des Zugriffs auf dem Auf-Chip-Speicherbereich darstellt;
  • Fig. 6 ist eine Zeitsteuerungstafel, die den Betrieb des in Fig. 4 gezeigten Emulationssystems in dem Fall des Zugriffs auf den externen Speicher darstellt;
  • Fig. 7 ist eine Speicherkarte, die den Auf-Chip-Speicherbereich mit 356 Bytes in der ersten Ausführungsform darstellt;
  • Fig. 8 ist eine Speicherkarte, die den Auf-Chip-Speicherbereich mit 512 Bytes in der ersten Ausführungsform darstellt;
  • Fig. 9 ist ein Blockdiagramm einer zweiten Ausführungsform des erfindungsgemäßen Emulationssystems; und
  • Fig. 10 ist eine Speicherkarte, die den Auf-Chip-Speicherbereich in der zweiten Ausführungsform darstellt.
  • Beschreibung der bevorzugten Ausführungsformen
  • In Fig. 1 wird ein Diagramm eines Beispiels des herkömmlichen Emulationssystems gezeigt, das auf einen externen Speicher zugreifen kann, und in der Lage ist, einen Mikrocomputer mit einem darin enthaltenen Auf-Chip-Speicher zu emulieren. Das gezeigte Emulationssystem umfaßt einen Berechnungschip 10, der eine zentrale Verarbeitungseinheit (im folgenden "CPU" genannt) 12, eine externe Busschnittstelle 14 und eine Datenspeicherschnittstelle 16 enthält. Der Berechnungschip 10 ist über einen Programmadressenbus 22, der zum Zuführen einer Programmadresse von dem Berechnungschip 10 verwendet wird, und über einen Programmdatenbus 24, der zum Zuführen eines Programms an dem Berechnungschip 10 verwendet wird, das aus dem Programmspeicher 20 ausgelesen wird, mit dem Programmspeicher 20, indem ein Programm gespeichert wird, verbunden.
  • Desweiteren ist der Berechnungschip 10 über einen Speicheradressenbus 32, der zum Zuführen einer Speicheradresse von dem Berechnunschip 10 zu einem Datenspeicher 30 verwendet wird, und über einen Speicherdatenbus 34, der zum Übertragen von Daten zwischen dem Datenspeicher 30 und der CPU 12 des Berechnungschips 10 verwendet wird, mit dem Datenspeicher 30 verbunden. Zusätzlich erzeugt der Berechnungschip 10 ein Speicherschreibsignal 36 und ein Speicherlesesignal 38 für den Datenspeicher 30.
  • Auch ist eine Hochrang- oder Platz-Adressenhaltevorrichtung 40 vorgesehen, die einen Eingang hat, der mit dem Speicheradressenbus 32 verbunden ist, um vorübergehend einen Hochplatzabschnitt einer Adresses zu halten, die von dem Speicheradressenbus 32 zugeführt wird. Die Haltevorrichtung 40 ist zum Empfang eines Hochplatzadressenhaltefreigabesignals 42 von dem Berechnungschip 10 geschaltet und hat einen Ausgang, der mit dem Datenspeicher 30 verbunden ist, um die gehaltene Hochplatzadresse an den Datenspeicher 30 zu liefern.
  • Desweiteren ist der Berechnungschip 10 über einem externen Bus 52, der zum Zuführen einer Speicheradresse von dem Berechnungschip 10 an den externen Speicher 50 und über einen externen Bus 54, der für die Übertragung von Daten zwischen dem externen Speicher 50 und der CPU 12 des Berechnungschips 10 verwendet wird, mit einem externen Speicher 50 verbunden. Zusätzlich erzeugt der Berechnungschip 10 ein externes Speicherschreibsignal 56 und ein externes Speicherlesesignal 58 für den externen Speicher 50.
  • Hier sei angenommen, daß die CPU 12 auf einen Raum von 64 K Bytes zugreifen kann. Zusätzlich sei angenommen, daß ein Bereich von einer Adresse "FEOOH" bis zu einer Adresse "FEFFH" (insgesamt 256 Bytes) als Auf-Chip-Speicherbereich eines Zielchips oder Mikrocomputers gesetzt ist, und daß zwei Systemtakte für den Zugriff auf den Auf-Chip-Speicherbereich nötig sind. Hier zeigt der Index "H", der an die Adressen angefügt ist, die hexadezimale Schreibweise an.
  • Deshalb entscheidet, wenn die CPU 12 einen Befehl von dem Programmspeicher 20 erhält und wenn das Ergebnis der Befehlsdekodierung anzeigt, daß Daten "96H" in eine Adresse "FE5AH" geschrieben werden sollen, da der Hochplatzabschnitt der Adresse gleich "FEH" ist, die CPU, daß die Daten in den Auf-Chip-Speicherbereich geschrieben werden sollen und startet dann den notigen Schreibvorgang.
  • In Fig. 2 ist eine Zeitsteuerungstafel des Betriebs des Emulationssystems für den Fall des Zugriffs auf den Auf- Chip-Speicherbereich gezeigt. Zunächst gibt die CPU 12 eine Hochplatzadresse "FEH" an den Speicheradressenbus 32 aus, und gleichzeitig aktiviert sie das Hochplatzadressenhaltefreigabesignal 42, so daß die Hochplatzadresse "FEH" von der Hochplatzadressenhaltevorrichtung 40 in dem Zustand T1 gehalten wird, der in Fig. 2 gezeigt ist. In diesem Zustand liefert die Haltevorrichtung 40 die Hochplatzadresse "FEH" an den Datenspeicher 30. Anschließend gibt die CPU 12 eine Niederplatzadresse "5AH" an den Speicheradressenbus 32 aus, und gleichzeitig gibt sie die Daten "96H" an den Speicherdatenbus 34 aus und aktiviert das Speicherschreibsignal 36. Somit werden die Daten "96H" von der CPU 12 in die Adresse "FE5AH" des Datenspeichers 30 geschrieben (Zustand T&sub2;) . Ein Lesevorgang kann ähnlich dem oben beschriebenen Schreibvorgang, mit der Ausnahme ausgeführt werden, daß das Speicherlesesignal 38 anstelle des Speicherschreibsignals 36 aktiviert wird und daß die CPU 12 Daten verarbeitet, die über den Speicherdatenbus 34 aus dem Speicher 30 ausgelesen wurden.
  • Nun wird der Betrieb für den Zugriff auf den externen Speicher, nämlich einen anderen Speicherbereich als der Auf- Chip-Speicher, erläutert. Wenn die CPU 12 einen Befehl von dem Programmspeicher 20 verarbeitet, und das Ergebnis der Befehlsdekodierung anzeigt, daß Daten 96H in eine Adresse "FD5AH" geschrieben werden sollen, die nicht innerhalb des Auf-Chip-Speicherbereichs existiert, entscheidet die CPU, daß die Daten in einen anderen Speicherbereich als den Auf-Chip-Speicherbereich geschrieben werden sollen. In diesem Fall greift die CPU 12 über eine externe Busschnittstelle 14 auf den Speicher 50 zu, der extern von dem Emulationssystem vorgesehen ist. Fünf Systemtakte werden für diesen Zugriff benötigt.
  • Fig. 3 ist eine Zeitsteuerungstafel, die den Betrieb des bekannten Emulationssystems im Fall des Zugriffs auf den externen Speicher zeigt. Zunächst gibt die CPU 12 die Hochplatzadresse "FDH" an den externen Datenbus 52 in einem in Fig. 3 gezeigten Zustand T&sub1; aus. Anschließend gibt die CPU 12 die Niederplatzadresse "5AH" an den externen Datenbus 52 und gleichzeitig die Daten "96H" an den externen Datenbus 54 aus und aktiviert das externe Schreibsignal 56. Somit werden die Daten "96H" von der CPU 12 in die Adresse "FD5AH" des anderen Speicherbereichs als den Auf-Chip- Speicherbereich geschrieben (Zustand T&sub2;). Der Zustand T&sub2; für den externen Zugriff ist jedoch aus vier Systemtakten zusammengesetzt. Ein Lesevorgang kann ähnlich dem oben beschriebenen Schreibvorgang mit der Ausnahme durchgeführt werden, daß das externe Lesesignal 58 anstelle des externen Schreibsignals 56 aktiviert wird und daß die CPU 12 Daten verarbeitet, die über den externen Datenbus 54 von dem externen Speicher ausgelesen wurden.
  • Beim obengenannten Beispiel wird, wenn ein Zielmikrocomputer einen Auf-Chip-Speicherbereich enthält, dessen Kapazität 256 Byte übersteigt, ein Zugriff auf einen Abschnitt des Auf-Chip-Speicherbereichs, der die 256 Bytes übersteigt, als ein externer Zugriff verarbeitet werden, der fünf Systemtakte benötigt. Deshalb kann der Abschnitt des Auf-Chip-Speicherbereichs, der 256 Byte übersteigt, nicht in geeigneter Weise als ein Auf-Chip-Speicherbereichszugriff emuliert werden.
  • Nun wird eine Ausführungsform des erfindungsgemäßen Emulationssystems unter Bezug auf die Figuren 4 bis 8 erläutert. Fig. 4 ist ein Blockdiagramm einer ersten Ausführungsform des erfindungsgemäßen Emulationssystems. Fig. 5 ist eine Zeitsteuerungstafel, die den Betrieb des Emulationssystems in dem Fall des Zugriffs auf den Auf-Chip-Speicherbereich darstellt, und Fig. 6 ist eine Zeitsteuerungstafel, die den Betrieb des Emulationssysterns im Fall des Zugriffs auf den externen Speicher darstellt. Fig. 7 ist eine Speicherkarte, die den Auf-Chip-Speicherbereich mit 256 Byte darstellt, und Fig. 8 ist eine Speicherkarte, die den Auf-Chip- Speicherbereich mit 512 Byte darstellt.
  • In Fig. 4 sind Elemente, die jenen in Fig. 1 gezeigten ähnlich sind oder ihnen entsprechen, mit dem gleichen Bezugszeichen gekennzeichnet, und ihre Erläuterung wird hier weggelassen. Wie aus dem Vergleich zwischen den Figuren 1 und 4 ersichtlich ist, umfaßt die erste Ausführungsform des erfindungsgemäßen Emulationssystems zusätzlich einen Bereichsentscheider 60, der seinerseits mit dem Speicheradressenbus 32 verbunden und zum Empfang des Hochplatzadressenhaltefreigabesignals 42 geschaltet ist und der ein Bereichsbestimmungssignal 62 für den Berechnungschip 10 erzeugt. Wenn das Hochplatzadressenhalte-Freigabesignal 42 aktiviert wird, verarbeitet der Bereichsentscheider die Hochplatzadresse an dem Speicheradressenbus 32 und entscheidet, ob die Adresse, auf die zugegriffen werden soll, innerhalb des Auf-Chip-Speicherbereich liegt. Wenn die Adresse, auf die zugegriffen werden soll, innerhalb des Auf-Chip-Speicherbereichs liegt, aktiviert der Bereichsentscheider 60 das Bereichsbestimmungssignal 62, um so der CPU 12 mitzuteilen, daß die Adresse, auf die zugegriffen werden soll, innerhalb des Auf-Chip-Speicherbereichs liegt. Wenn andererseits die Adresse, auf die zugegriffen werden soll, nicht innerhalb des Auf-Chip-Speicherbereichs liegt, aktiviert der Bereichsentscheider 60 das Bereichsbestimmungssignal 62 nicht. Da der Bereichsentscheider 60 entscheidet, ob die Adresse, auf die zugegriffen werden soll, innerhalb des Auf-Chip- Speicherbereichs ist oder nicht, ist es möglich, eine Adressengröße frei festzusetzen, die dem Auf-Chip-Speicherbereich zugeordnet ist. Mit anderen Worten ist es möglich, eine erste Adresse und eine letzte Adresse des Auf-Chip- Speicherbereichs frei zu bestimmen. Bei dieser Ausführungsform benötigt die CPU 12 zwei Systemtakte für den Zugriff auf den Auf-Chip-Speicherbereich, aber 5 Systemtakte für den Zugriff auf andere Speicherbereiche, als dem Auf-Chip- Speicherbereich.
  • Hier sei angenommen, daß der Auf-Chip-Speicher des Zielcomputers eine Kapazität von 256 Bytes hat, und daß der Bereichsentscheider 60 so gesetzt ist, daß er entscheidet, daß die Adressen "FEOOH" bis "FEFFH" auf dem Auf-Chip- Speicherbereich sind, wie es in Fig. 7 gezeigt ist.
  • Deshalb führt, wenn die CPU 12 einen Befehl von dem Programmspeicher 20 verarbeitet und das Ergebnis der Befehlsdekodierung anzeigt, daß Daten "96H" in einer Adresse "FE5AH" zu schreiben sind, die CPU 12 einen nötigen Schreibvorgang in der in Fig. 5 gezeigten Reihenfolge durch, in der eine Zeittafel für den Betrieb des Emulationssystems in dem Fall gezeigt ist, daß auf den Auf-Chip- Speicherbereich zugegriffen wird. Zunächst gibt die CPU 12 die Hochplatzadresse "FEH" an den Speicheradressenbus 32 und den externen Adressenbus 52 aus, und gleichzeitig aktiviert sie das Hochplatzadressenhaltefreigabesignal 42, so daß die Hochplatzadresse "FEH" von der Hochplatzadressenhaltevorrichtung 40 im in Fig. 2 gezeigten Zustand T&sub1; gehalten wird. Wenn das Hochplatzadressenhaltefreigabesignal 42 aktiviert wird, bestimmt der Bereichsentscheider 60, ob die Adresse "FEH" an dem Speicheradressenbus 32 innerhalb des Raums ist, der dem Auf-Chip-Speicherbereich zugeordnet ist. In diesem Fall, da die Adresse "FEH" innerhalb des Raums ist, der dem Auf-Chip-Speicherbereich zugeordnet ist, aktiviert der Bereichsentscheider 60 des Bereichsbestimmungssignals 62, und in Abhängigkeit des aktivierten Bestimmungssignals 62 entscheidet die CPU 12, daß der Zugriff auf den Auf-Chip-Speicherbereich gerichtet ist (Zustand T&sub1;).
  • Anschließend gibt die CPU 12 eine Niederplatzadresse "5AH" an den Speicheradressenbus 32 und gleichzeitig die Daten "96H" an den Speicherdatenbus 34 aus und aktiviert auch das Speicherschreibsignal 36. Gleichzeitig führt, da die CPU 12 bereits im Zustand T&sub1; entschieden hat, daß der Zugriff auf den Auf-Chip-Speicherbereich gerichtet ist, die CPU den Zugriff mit zwei Systemtakten durch. Somit werden die Daten "96H" von der CPU 12 in die Adresse "FE5AH" des Datenspeichers 30 (Zustand T&sub2;) als Zugriff auf den Auf-Chip- Speicherbereich geschrieben. Ein Lesevorgang kann ähnlich dem oben beschriebenen Schreibvorgang, mit der Ausnahme durchgeführt werden, daß das Speicherlesesignal 38 anstelle des Speicherschreibesignals 36 aktiviert wird und daß die CPU 12 über den Speicherdatenbus 34 aus dem Speicher 30 ausgelesenen Daten verarbeitet.
  • Wenn die CPU 12 einen Befehl aus dem Programmspeicher 20 verarbeitet, und das Ergebnis der Befehlsdekodierung anzeigt, daß Daten "96H" in einer Adresse "FD5AH" geschrieben werden sollen, die nicht innerhalb des Auf-Chip-Speicherbereichs liegt, beginnt die CPU 12 einen notwendigen Schreibvorgang in der in Fig. 6 gezeigten Reihenfolge, in der eine Zeitsteuerungstafel des Betriebs des Emulationssystems für den Fall des Zugriffs auf den externen Speicherbereich dargestellt ist.
  • Zunächst gibt die CPU 12 die Hochplatzadresse "FDH" an den Speicheradressenbus 32 und den externen Adressenbus 52 in einem in Fig. 6 gezeigten Zustand T&sub1; aus. Gleichzeitig aktiviert die CPU das Hochplatzadressenhaltefreigabesignal 42. Wenn das Hochplatzadressenhaltefreigabesignal 42 aktiviert ist, entscheidet der Bereichsentscheider 60, ob die Adresse "FDH" an dem Speicheradressenbus 32 innerhalb eines Raums ist, der dem Auf-Chip-Speicherbereich zugeordnet ist. Da in diesem Fall die Adresse "FDH" nicht innerhalb eines Raums ist, der dem Auf-Chip-Speicherbereich zugeordnet ist, aktiviert der Bereichsentscheider 60 nicht das Bereichsbestimmungssignal 62. Im Ergebnis entscheidet die CPU 12, daß der Zugriff nicht auf den Auf-Chip-Speicherbereich gerichtet ist (Zustand T&sub1;).
  • Anschließend gibt die CPU 12 die Niederplatzadresse "5AH" an den externen Adressenbus 52 und gleichzeitig die Daten "96H" an den externen Datenbus 54 aus und aktiviert das externe Schreibsignal 56. Somit werden die Daten "96H" von der CPU 12 über die externe Busschnittstelle 14 in die Adresse "FD5AH" des anderen Speicherbereichs (des externen Speichers 50) als den Auf-Chip-Speicherbereich geschrieben. (Zustand T&sub2;). Bei dem externen Zugriff ist der Zustand T&sub2; jedoch aus vier Systemtakten zusammengesetzt. Ein Lesevorgang kann ähnlich dem oben beschriebenen Schreibvorgang mit der Ausnahme durchgeführt werden, daß das externe Lesesignal 58 anstelle des externen Schreibsignals 56 aktiviert wird und daß die CPU 12 die Daten verarbeitet, die über den externen Datenbus 54 aus dem externen Speicher ausgelesen wurden.
  • Im Fall der Emulation eines Zielcomputers mit einem Auf- Chip-Speicher von 512 Bytes sei angenommen, daß der Bereichsentscheider 60 so gesetzt ist, daß er entscheidet, daß die Adressen "FDOOH" bis "FEFFH" in dem Auf-Chip- Speicherbereich sind, wie es in Fig. 8 gezeigt wird.
  • In diesem Fall beginnt, wenn die CPU 12 einen Befehl von dem Programmspeicher 20 verarbeitet und das Ergebnis der Befehlsdekodierung anzeigt, das die Daten "96H" in eine Adresse "FD5AH" geschrieben werden sollen, die CPU den nötigen Schreibvorgang in der im Anschluß dargestellten Reihenfolge. Zunächst gibt die CPU 12 die Hochplatzadresse "FDH" an den Speicheradressenbus 32 und den externen Adressenbus 52 aus und aktiviert gleichzeitig das Hochplatzadressenhaltefreigabesignal 42. In Abhängigkeit des aktivierten Hochplatzadressenhaltefreigabesignals 42 bestimmt der Bereichsentscheider 60, ob die Adresse "FDH" an dem Speicheradressenbus 32 innerhalb eines Raumes liegt, der dem Auf-Chip-Speicherbereich zugeordnet ist. In diesem Fall liegt die Adresse "FDH" innerhalb des Raums, der dem Auf-Chip-Speicherbereich zugeordnet ist, und der Bereichsentscheider 60 aktiviert das Bereichsbestimmungssignal 62. Im Ergebnis schreibt die CPU 12 die Daten "FDH" in die Adresse "FD5AH" als Zugriff auf den Auf-Chip-Speicherbereich ähnlich dem oben beschriebenen Auf-Chip-Speicherbereich-Schreibvorgang in dem Fall, in dem die Kapazität des Auf-Chip-Speicherbereichs gleich 256 Bytes gesetzt war.
  • Wenn der bearbeitete Befehl von dem Programmspeicher 20 ein Befehl ist, der anzeigt, daß die Daten "96H" in eine Adresse "FC5AH" geschrieben werden sollen, werden die Daten "96H" in die Adresse "FC5AH" mit Zugriff auf einen anderen Speicherbereich als den Auf-Chip-Speicherbereich geschrieben.
  • Anstelle des externen Speichers 50, auf den über die externe Busschnittstelle 14 zugegriffen wird, ist es möglich, innerhalb des Emulationssysterns einen Speicher vorzusehen, auf den mit demselben Zugriffszyklus wie der externe Speicher 50 zugegriffen wird, so daß der Zugriff auf den externen Speicher unter Verwendung des internen Speichers emuliert werden kann.
  • In Fig. 9 wird ein Blockdiagramrn einer zweiten Ausführungsform des erfindungsgemäßen Ernulationssystems gezeigt. In Fig. 9 haben Elemente, ähnlich oder entsprechend jenen, die in Fig. 4 gezeigt sind, die gleichen Bezugszeichen, und ihre Erläuterung wird weggelassen.
  • Wie aus dem Vergleich zwischen den Figuren 4 und 9 ersichtlich ist, enthält die zweite in Fig. 9 gezeigte Ausführungsform zusätzlich einen zweiten Datenspeicher 30A, der seinerseits mit dem Speicheradressenbus 32, dem Speicherdatenbus 34 und der Hochplatzadressenhaltevorrichtung 40 verbunden, und auch zum Empfang des Speicherschreibsignals 36 und des Speicherlesesignals 38 geschaltet ist. Der zweite Datenspeicher 30A ist - ähnlich dem ersten Datenspeicher 30 - zur Ernulation des Zielrnikrocomputers vorgesehen, aber unterscheidet sich vom ersten Datenspeicher 30 bezüglich der Zahl der benotigten Zugriffszyklen. Zusätzlich erzeugt der Bereichsentscheider 60 nicht nur das Bereichsbestimmungssignal 62, sondern auch ein zweites Bestimmungssignal 62A. Sowohl das erste als auch das zweite Bestimmungssignal 62 und 62A zeigen an, ob die Adresse, auf die zugegriffen werden soll, innerhalb des Auf-Chip-Speicherbereichs liegt. Das Bereichsbestimmungssignal 62 bestimmt jedoch den ersten Datenspeicher 30, und das zweite Bestimmungssignal 62A zeigt den zweiten Datenspeicher 30A an.
  • Nun sei angenommen, daß ein Zielmikrocomputer mit einer in Fig. 10 gezeichneten Speicherkarte emuliert wird. Die Adressen "FEOOH" bis "FEFFH" sind dem Auf-Chip-Speicherbereich 1 zugeordnet, der zwei Zyklen für den Zugriff benötigt, und die Adressen "FCOOH" bis "FCFFH" sind dem Auf- Chip-Speicherbereich 2 zugeordnet, der drei Zyklen für den Zugriff benötigt. In diesem Fall wird der Bereichsentscheider 60 so gesetzt, daß er das erste Bestimmungssignal 62 aktiviert, wenn die CPU eine der Adressen zwischen "FEOOH" bis "FEFFH" zugreift, und daß das zweite Bestimmungssignal 62A aktiviert wird, wenn die CPU auf eine der Adressen zwischen "FCOOH" bis "FCFFH" zugreift.
  • Wenn ein zu bearbeitender Befehl von dem Programmspeicher 20 somit anzeigt, daß die Daten "96H" in einer Adresse "FE5AH" zu schreiben sind, werden die Daten "96H" in den ersten Datenspeicher 30 mit zwei Systemzyklen geschrieben. Wenn andererseits ein verarbeiteter Befehl von dem Programmspeicher 20 anzeigt, daß die Daten "96H" in eine Adresse "FC5AH" zu schreiben sind, werden die Daten "96H" in den zweiten Datenspeicher 30A mit drei Systemzyklen geschrieben.
  • Wie aus dem Vorangehenden ersichtlich ist, kann die zweite Ausführungsform in dem Fall der Ernulation eines Zielmikrocomputers mit einer Mehrzahl Auf-Chip-Speicher, die jeweils eine verschiedene Anzahl von Zugriffszyklen benötigen, den Zielmikrocornputer mit der geeigneten Zahl von Zugriffzyklen emulieren.
  • Wie aus der vorangehenden Beschreibung ersichtlich ist, bestimmt der Berechnungs-Chip (die CPU) nicht, ob der Zugriffsraum innerhalb des Auf-Chip-Speicherbereichs ist. Der Bereichsentscheider empfängt eine Hochplatzadresse von der Adresse, die von dem Berechnungschip geliefert wird, und bestimmt, ob der Raum, auf den von dem Berechnungschip zugegriffen werden soll, innerhalb des Auf-Chip-Bereichs liegt. Zusätzlich meldet der Bereichsentscheider das Ergebnis der Bestimmung an dem Berechnungschip, um zu veranlassen, daß der Berechnungschip einen Zugriffsvorgang bezüglich dem Ergebnis der Bestimmung durchführt. Dementsprechend ist es möglich, verschiedene Zielmikrocomputer mit verschiedenen Auf-Chip-Speicherbereichskapazitäten mit jeweiligen geeigneten Zugriffszyklen zu emulieren.

Claims (6)

1. Emulationssystem, das einen Berechnungschip (10), einen Programmspeicher (20) und einen Datenspeicher (30) enthält, und mit einem externen Speicher (50) verbunden ist, gekennzeichnet durch Mittel (60) zum Bestimmen, ob ein Platz für den Zugriff des Berechnungschips (10) innerhalb eines Auf-Chip-Speicherbereiches eines Zielmikrocomputers liegt oder nicht, und zum Mitteilen des Entscheidungsergebnisses an den Berechnungschip (10), so daß der Berechnungschip (10) betrieben wird, um, wenn der Platz für den Zugriff durch den Berechnungschip (10) innerhalb des Auf-Chip-Speicherbereichs liegt, auf den Datenspeicher (30) mit einer vorgegebenen Zugriffszeitsteuerung zuzugreifen und um auf den externen Speicher (5) mit einer anderen vorgegebenen Zugriffszeitsteuerung zuzugreifen, wenn der Platz für den Zugriff durch den Berechnungschip (10) nicht innerhalb des Auf-Chip-Speicherbereichs des Ziel computers liegt.
2. Emulationssystem nach Anspruch 1,
dadurch gekennzeichnet, daß der Programmspeicher (20) ein Programm speichert, der Datenspeicher (30) zur Ernulation des Zielmikrocomputers vorgesehen ist und daß der Berechnungschip (10) mit dem Programmspeicher (20) gekoppelt ist und eine Verarbeitungseinheit (12) enthält, die einen Betrieb in Übereinstimmung mit dem im Programmspeicher gespeicherten Programm durchführt, wobei der Berechnungschip (10) auch eine Datenspeicherschnittstelle (16) zum Zugriff auf den Datenspeicher (30) und eine externe Busschnittstelle (14) zum Zugriff auf den externen Speicher (50) außerhalb des Emulationssystems enthält, und daß das Mittel (60) zum Entscheiden, ob ein Platz für den Zugriff durch den Berechnugnstyp innerhalb des Auf-Chip- Speicherbereichs des Zielmikrocornputers liegt oder nicht, und zum Mitteilen des Entscheidungsergebnisses an den Berechnungsschip mit dem Berechnungsschip (10) gekoppelt ist, so daß der Berechnungschip (10) betrieben wird, um auf den Datenspeicher (30) über die Datenspeicherschnittstelle (16) zuzugreifen, wenn der Platz für den Zugriff durch den Berechnungschip innerhalb des Auf-Chip-Speicherbereichs des Zielmikrocomputers liegt, und um auf den externen Speicher (50) über die externe Busschnittstelle (14) zuzugreifen, wenn der Platz für den Zugriff durch den Berechnungschip nicht innerhalb des Auf-Chip-Speicherbereichs des Zielmikrocomputers liegt.
3. Emulationssystem nach Anspruch 2,
bei dem das Entscheidungsmittel (60) zum Empfang einer Adresse von dem Berechnungschip (10) zum Dekodieren der Adresse verbunden ist, um so zu bestimmen, ob die durch den Berechnungschip (10) ausgegebene Adresse innerhalb eines Auf-Chip-Bereiches des Zielmikrocomputers liegt, wobei das Entscheidungsmittel (60) ein Bereichsbestimmungssignal (62) an den Berechnungschip (10) ausgibt, wenn die durch den Berechnungschip ausgegebene Adresse innerhalb des Auf-Chip- Bereichs des Zielmikrocomputers liegt.
4. Emulationssystem nach Anspruch 3,
bei dem das Entscheidungsmittel (60) zum Empfang eines vorgegebenen Hoch-Platz-Abschnitts (42) der von dem Berechnungschip (10) ausgegebenen Adresse verbunden ist.
5. Emulationssystem nach Anspruch 2,
bei dem der Berechnungschip (10) mit dem Datenspeicher (30) über einen Speicheradressenbus (32) und einen Speicherdatenbus (34) und über den Speicheradressenbus auch mit einer Hoch-Platz-Adressenhaltevorrichtung (40) gekoppelt ist, die ihrerseits mit dem Datenspeicher (30) verbunden ist, und wobei der Berechnungschip (10) ein Hoch-Platz-Adressenhalte-Freigabesignal (42) an die Hoch-Platz-Adressenhalte- Vorrichtung (40) erzeugt, wenn der Berechnungschip eine Hoch-Platz-Adresse an den Speicheradressenbus (230) ausgibt, und wobei das Entscheidungsmittel (60) mit dem Speicheradressenbus (32) gekoppelt und zum Empfang des Hoch- Platz-Adressenhalte-Freigabesignals geschaltet ist, so daß wenn das Hoch-Platz-Adressenhalte-Freigabesignal aktiviert wird, das Entscheidungsmittel (60) einen Betrieb zur Entscheidung durchführt, ob die durch den Berechnungschip (10) ausgegebene Adresse innerhalb eines Auf-Chip-Bereichs des Zielmikrocornputers liegt oder nicht, und um ein Bereichsbestimmungssignal (62) an den Berechnungschip zu erzeugen, wenn die durch den Berechnungschip ausgegebene Adresse innerhalb des Auf-Chip-Bereichs des Zielmikrocomputers liegt.
6. Emulationssystem nach Anspruch 5,
das außerdem einen zweiten Datenspeicher (30A) enthält, und bei dem das Entscheidungsmittel (60) ein erstes Bereichsbestimmungssignal (62) an den Berechnungschip (10) erzeugt, wenn die durch den Berechnungschip ausgegebene Adresse innerhalb des Auf-Chip-Bereichabschnittes des Zielmikrocomputers entsprechend dem ersten Datenspeicher (30) liegt, und ein zweites Bereichsbestimmungssignal (62A) an den Berechnungschip (10) erzeugt, wenn die durch den Berechnungschip ausgegebene Adresse innerhalb des Auf-Chip- Bereichsabschnitts des Zielmikrocomputers entsprechend dem zweiten Datenspeicher (30A) liegt.
DE68927306T 1988-04-13 1989-04-13 Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen On-Chip-Speicherkapazitäten Expired - Fee Related DE68927306T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63092076A JPH0724029B2 (ja) 1988-04-13 1988-04-13 エミュレーション装置

Publications (2)

Publication Number Publication Date
DE68927306D1 DE68927306D1 (de) 1996-11-14
DE68927306T2 true DE68927306T2 (de) 1997-05-07

Family

ID=14044361

Family Applications (1)

Application Number Title Priority Date Filing Date
DE68927306T Expired - Fee Related DE68927306T2 (de) 1988-04-13 1989-04-13 Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen On-Chip-Speicherkapazitäten

Country Status (4)

Country Link
US (1) US5168559A (de)
EP (1) EP0337463B1 (de)
JP (1) JPH0724029B2 (de)
DE (1) DE68927306T2 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0476681A (ja) * 1990-07-13 1992-03-11 Mitsubishi Electric Corp マイクロコンピュータ
JPH04177543A (ja) * 1990-11-09 1992-06-24 Nec Ic Microcomput Syst Ltd マイクロコンピュータ
JP2856591B2 (ja) * 1991-06-27 1999-02-10 三菱電機株式会社 マイクロコンピュータ、プログラム開発装置およびプログラム開発システム
JPH05257710A (ja) * 1991-08-12 1993-10-08 Advanced Micro Devicds Inc 内部実行パラメータを与えるためのシステムおよびプロセッサによって実行されるべき命令を検証するための配列
JPH0789340B2 (ja) * 1992-01-02 1995-09-27 インターナショナル・ビジネス・マシーンズ・コーポレイション バス間インターフェースにおいてアドレス・ロケーションの判定を行なう方法及び装置
FR2696561B1 (fr) * 1992-10-02 1994-12-23 Sgs Thomson Microelectronics Micro-calculateur pouvant fonctionner en mode d'émulation avec des périphériques internes et externes.
US5557743A (en) * 1994-04-05 1996-09-17 Motorola, Inc. Protection circuit for a microprocessor
JP4312272B2 (ja) * 1995-10-06 2009-08-12 モトローラ・インコーポレイテッド 内部メモリへのアクセスを制限するマイクロコントローラ
US5737760A (en) * 1995-10-06 1998-04-07 Motorola Inc. Microcontroller with security logic circuit which prevents reading of internal memory by external program
JP3620181B2 (ja) * 1996-12-05 2005-02-16 富士通株式会社 半導体装置及びリードアクセス方法
CA2251295C (en) * 1998-01-27 2002-08-20 Sharp Kabushiki Kaisha Electric vacuum cleaner
US6397242B1 (en) 1998-05-15 2002-05-28 Vmware, Inc. Virtualization system including a virtual machine monitor for a computer with a segmented architecture
US8631066B2 (en) 1998-09-10 2014-01-14 Vmware, Inc. Mechanism for providing virtual machines for use by multiple users
US7516453B1 (en) 1998-10-26 2009-04-07 Vmware, Inc. Binary translator with precise exception synchronization mechanism

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3972025A (en) * 1974-09-04 1976-07-27 Burroughs Corporation Expanded memory paging for a programmable microprocessor
US4434462A (en) * 1980-11-24 1984-02-28 Texas Instruments Incorporated Off-chip access for psuedo-microprogramming in microprocessor
US4450519A (en) * 1980-11-24 1984-05-22 Texas Instruments Incorporated Psuedo-microprogramming in microprocessor in single-chip microprocessor with alternate IR loading from internal or external program memories
JPS57172454A (en) * 1981-04-17 1982-10-23 Hitachi Ltd Memory series selecting circuit
US4450524A (en) * 1981-09-23 1984-05-22 Rca Corporation Single chip microcomputer with external decoder and memory and internal logic for disabling the ROM and relocating the RAM
IT1142074B (it) * 1981-11-24 1986-10-08 Honeywell Inf Systems Sistema di elaborazione dati con allocazione automatica dell'indirizzo in una memoria modulare
US4514805A (en) * 1982-02-22 1985-04-30 Texas Instruments Incorporated Interrupt operation in systems emulator mode for microcomputer

Also Published As

Publication number Publication date
DE68927306D1 (de) 1996-11-14
EP0337463A2 (de) 1989-10-18
JPH0724029B2 (ja) 1995-03-15
US5168559A (en) 1992-12-01
EP0337463B1 (de) 1996-10-09
EP0337463A3 (de) 1991-08-07
JPH01263737A (ja) 1989-10-20

Similar Documents

Publication Publication Date Title
DE69027348T2 (de) Speicherblockadressenermittlungsschaltkreis
DE3881824T2 (de) Speichersystem mit automatischer grössenbestimmung.
DE68927306T2 (de) Emulationssystem, fähig zur Anpassung an Mikrorechner mit verschiedenen On-Chip-Speicherkapazitäten
DE3685876T2 (de) Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher.
DE69111635T2 (de) Gerät und Verfahren zur Background-Speicherprüfung während des Systemanlaufs.
DE69737757T2 (de) System und Verfahren zur Speicher-Emulation
DE3803759C2 (de)
DE60224774T2 (de) Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit
DE68923863T2 (de) Ein-/Ausgabecachespeicherung.
DE68922975T2 (de) Speichereinheit mit zwei Toren.
DE69027806T2 (de) Multifunktionskoppler zwischen einer zentralen Verarbeitungseinheit eines Rechners und verschiedenen Peripheriegeräten dieses Rechners
DE69020569T2 (de) Modulares ein-/ausgabesystem für superrechner.
DE69333319T2 (de) Datenverarbeitungssystem mit synchronem, dynamischem Speicher in integrierter Schaltkreistechnik
DE69126756T2 (de) Prüfbare RAM-Architektur in einem Mikroprozessor mit eingebettetem Cache-Speicher
DE4324521C2 (de) Vorrichtung zum Bestimmen einer Speicherkonfiguration von einem oder mehreren Paaren von Speichermodulen
DE3587031T2 (de) Zugriffpruefungseinrichtung fuer digitale datenverarbeitungsanordnung, welche einen speicher mit seitenabruf hat.
DE3888438T2 (de) Cachespeichersteuerungsvorrichtung für eine Datenverarbeitungsanordnung mit virtuellem Speicher.
DE19645745A1 (de) Dynamischer Schreib-/Lesespeicher
DE69029815T2 (de) Zentralisierte referenz- und änderungstabelle für eine virtuelle speicheranordnung
DE3911721C2 (de)
DE69724732T2 (de) Atomare Operation in Fernspeicher und Vorrichtung zur Durchführung der Operation
DE4117672A1 (de) Verfahren und vorrichtung zur steuerung eines zwischen einer zentraleinheit und einem arbeitsspeicher angeordneten cache-speichers
DE19714681A1 (de) Hauptspeichersteuergerät
DE112005003216T5 (de) System und Verfahren für Steuerregister, auf die über private Rechenoperationen zugegriffen wird
DE3338329A1 (de) Computersystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP

8339 Ceased/non-payment of the annual fee