DE2808580C2 - Microcomputer with a microprocessor integrated on a chip and a read-only memory - Google Patents
Microcomputer with a microprocessor integrated on a chip and a read-only memoryInfo
- Publication number
- DE2808580C2 DE2808580C2 DE19782808580 DE2808580A DE2808580C2 DE 2808580 C2 DE2808580 C2 DE 2808580C2 DE 19782808580 DE19782808580 DE 19782808580 DE 2808580 A DE2808580 A DE 2808580A DE 2808580 C2 DE2808580 C2 DE 2808580C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- input
- command
- output
- read
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
Description
Die vorliegende Erfindung betrifft einen Mikrocomputer nach dem Oberbegriff des Anspruchs 1. Aus der DE-AS 14 99 226 ist eine Einrichtung zur Fehlerprüfung in einer elektrischen Datenverarbeitungsanlage bekannt, bei der steuerbare Verbindungseinrichtungen vorgesehen sind, die den Prüfbefehlsdecodierer entweder an den Steuerspeicher oder an den Hauptspeicher anschließen. Es wird ein Festwertspeicher (Steuerspeicher) geprüft wobei der Hauptspeicher als Prüfhilfsmittel dientThe present invention relates to a microcomputer according to the preamble of claim 1. From the DE-AS 14 99 226 a device for checking errors in an electrical data processing system is known, in which controllable connection devices are provided that either the test command decoder connect to the control store or to the main store. A read-only memory (control memory) checked with the main memory serving as a test aid
Bei der Erstellung von Benutzerprogrammen für die Funktionsablaufsteuerung von Geräten oder Maschinen durch Mikrocomputer wird dagegen so verfahren, daß das Benutzerprogramm, das aus Einern Programmablaufplan aufgestellt wurde und von dem noch nicht bekannt ist ob es in endgültig richtiger Form vorliegt, noch nicht fest in einem Festwertspeicher (ROM oder PROM) des steuernden Mikrocomputers eingeschrieben wird, da der Festwertspeicher sonst im Falle von Fehlern im Programm wertlos werden würde. Das Benutzerprogramm wird vielmehr zunächst in einem Entwicklungs-Mikrocomputersystem mit Hilfe eines Testprogramms (Echtzeit-Test-Adapter-Programm; im folgenden ETA-Programm genannt) getestet Zu diesem Zweck wird das Benutzerprogramm in einen Speicher mit wahlfreiem Zugriff (im folgenden Benutzerprognmmspeicher genannt) geschrieben, welcher mittels eines Umschalters an einen Mikroprozessor (CPU) des Entwicklungs-Mikrocomputersystems ankoppelbar ist, wobei der Umschalter dann gleichzeitig einen das ETA-Programm enthaltenden Speicher vom Mikroprozessor abkoppelt Das zu steuernde Gerät wird dann in seinem Funktionsablauf vom Mikroprozessor mit Hilfe des Benutzerprogramms gesteuert In bestimmten Punkten (sogenannten Breakpoints) wird der Benutzerprogrammspeicher vom Mikroprozessor abgekoppelt und der ETA-Speicher zu Testzwecken an den Mikroprozessor angekoppelt.When creating user programs for the functional sequence control of devices or machines on the other hand, microcomputers proceed in such a way that the user program which has been drawn up from a program flow chart and which has not yet been used it is known whether it is finally in the correct form, not yet fixed in a read-only memory (ROM or PROM) of the controlling microcomputer is written, otherwise the read-only memory in the case of Errors in the program would become worthless. Rather, the user agent is initially in a Development microcomputer system with the help of a test program (real-time test adapter program; im The following ETA program is called). For this purpose, the user program is stored in a memory written with random access (hereinafter referred to as user program memory), which by means of a switch can be coupled to a microprocessor (CPU) of the development microcomputer system, wherein the switch then at the same time a memory containing the ETA program from the microprocessor uncoupled The device to be controlled is then in its functional sequence of the microprocessor with the help of the user program controlled In certain points (so-called breakpoints) the user program memory decoupled from the microprocessor and the ETA memory coupled to the microprocessor for test purposes.
Mikrocomputer-Entwicklungssysteme sind bekannt. Ein Beispiel für ein derartiges Entwicklungssystem ist in einem Prospekt der Firma Intel Corporation. Nr. 98 005 01 A, luni 1977 mit dem Titel »ICE-48 MCS 48Microcomputer development systems are known. An example of such a development system is in a prospectus from Intel Corporation. No. 98 005 01 A, June 1977 with the title »ICE-48 MCS 48
In-Cireuit Emulator« beschrieben (»iCE-48« und »MSC 48« sind Warenzeichen der Firmma Intel Corporation).In-Cireuit Emulator «(» iCE-48 «and» MSC 48 «are trademarks of Intel Corporation).
Ein durch einen Mikrocomputer gesteuertes Gerät kann generei! durch drei Teile, nämlich die Geräte-Hardware, einen Mikroprozessor (CPU) und einen j Benutzerprogrammspeicher charakterisiert werden. Beim Arbeiten mit einem Emulations-und Test-Adapitf wird die CPU aus dem zu steuernden Gerät entfernt An ihre Stelle tritt eine Verbindung mit dem Emulationsund Test-Adafier, der als wesentliche Elemente eine gleichartige CPU, einen ETA-Speicher sowie einen Umschalter rar Ankopplung der CPU entweder an das zu steuernde Gerät oder den ETA-Speicher enthält Eine solche Konfiguration ist schematisch in F i g. 1 dargestellt Ein zu steuerndes Gerät 1 mit einem is Benutzerprogrammspeicher 2 ist an einen Emulationsund Test-Adapter ankoppelbar, welcher eine CPU 3 sowie einen ETA-Speicher 4 enthält Ein Umschalter 5 kann die CPU 3 entweder an den ETA-Speicher 4 (gestrichelte Schalterstellung) oder an das zu steuernde Gerät 1 (ausgezogene Schalterstellung) ankoppeln.A device controlled by a microcomputer can be great! characterized by three parts, namely the device hardware, a microprocessor (CPU) and a user program memory. When working with an emulation and test Adapitf the CPU from the remote device to be controlled to be its place is a connection to the emulation and test Adafier, as essential elements a similar CPU, an ETA memory and a switch rar coupling of CPU either to the device to be controlled or to the ETA memory. Such a configuration is shown schematically in FIG. 1 shown A device 1 to be controlled with a user program memory 2 can be coupled to an emulation and test adapter, which contains a CPU 3 and an ETA memory 4. or couple to the device to be controlled 1 (extended switch position).
Entsprechend den beiden möglichen Stellungen des Schalters 5 arbeitet der in F i g 1 gestrichelt eingefaßte und mit ETA bezeichnete Emulations- und Test-Adapter in zwei Zuständen.In accordance with the two possible positions of the switch 5, the one enclosed in dashed lines in FIG. 1 operates and emulation and test adapters labeled ETA in two states.
Im ersten Zustand ist die CPU 3 über den Umschalter 5 mit dem Gerät 1 verbunden und interpretiert das im Benutzerprogrammspeicher 2 stehende Benutzerprogramm. In the first state, the CPU 3 is connected to the device 1 via the switch 5 and interprets this in the User program memory 2 standing user program.
Im zweiten Zustand ist die CPU 3 über den Umschalter 5 mit dem ETA-Speicher 4 verbunden, so daß der Emulations- und Test-Adapter virtuell vom Gerät 1 getrennt ist Die CPU 3 kann mit Hilfe des im ETA-Speicher 4 stehenden Testprogramms selbständige Operationen ausführen.In the second state, the CPU 3 is connected to the ETA memory 4 via the switch 5, see above that the emulation and test adapter is virtually separated from device 1. The CPU 3 can use the im ETA memory 4 running test program execute independent operations.
Der Obergang vom ersten Zustand, in dem die CPU 3 an den Benutzerprogrammspeicher 2 angekoppelt ist, in den zweiten Zustand, in dem die CPU 3 an den ETA-Speicher 4 angekoppelt ist, kann dem Emulationsund Test-Adapter von einem Programmierer als »Breakpoint < vorgegeben werden. Das Ereignis kann entweder aus dem Gerät selbst kommen (zum Beispiel fehlerhafte Reaktion des Gerätes, deren Ursache im Benutzerprogramm gesucht wird) oder aus dem Ablauf des Benutzerprogramms gewonnen werden (zum Beispiel Durchlaufen einer als kritisch erkannten Programmytelle).The transition from the first state in which the CPU 3 is coupled to the user program memory 2 in the second state, in which the CPU 3 is coupled to the ETA memory 4, can be the emulation and Test adapter can be specified by a programmer as a »breakpoint <. The event can either come from the device itself (e.g. faulty reaction of the device, the cause of which is in the User program is searched) or obtained from the sequence of the user program (for Example running through a program area recognized as critical).
Bei dem genannten Übergang werden zunächst die Inhalte aller CPU-Register in den ETA-Speicher 4 gerettet, damit sie später für Diagnosezwecke ausgegeben werden können. Hierbei dürfen die CPU-Register zumindest anfangs nicht verwendet werden, weil sonst ihre Inhake verändert wurden. Aus diesem Grunde erfordert die Umschaltung einen erheblichen Hardware-Aufwand, weil sie anfangs nicht ausreichend von der CPU 3 unterstützt werden kann.During the transition mentioned, the contents of all CPU registers are initially stored in the ETA memory 4 saved so that they can later be issued for diagnostic purposes. The CPU registers are allowed to at least initially not be used, because otherwise their hooks would be changed. For this reason the switchover requires a considerable amount of hardware, because initially it is insufficiently dependent on the CPU 3 can be supported.
Der Übergang vom zweiten Zustand, in dem die CPU 3 an den ETA-Speicher 4 angekoppelt ist, in den ersten Zustand, in dem die CPU 3 an das zu steuernde Gerät 1 angekoppelt ist, erfolgt über ein entsprechendes, von bo einem Programmierer vorgegebenes Kommando. Damit wird ein Testlauf des Benutzerprogramms eingeleitet. Diesem Umschalten geht im ETA-Speicher ein Programmstück voran, das in der CPU 3 die internen Register auf vorgegebene Werte setzt, damit das <>5 Benutzerprogrumrn an einer beliebigen Stelle mit einem definierten Zustand der CPU 3 gestartet werden kann. Nachdem im letzten Teil des Umschaltens die CPU-Register «ich; mehr benutzt werden dürfen, weil sie bereits auf bestimmie Werte gesetzt wurden, ist auch dafür ein relativ hoher Hardwuf e-Auiwi :;d nöti«.The transition from the second state, in which the CPU 3 is coupled to the ETA memory 4, to the first The state in which the CPU 3 is coupled to the device 1 to be controlled takes place via a corresponding from bo command given to a programmer. This initiates a test run of the user program. This switchover is preceded by a program section in the ETA memory, which in the CPU 3 contains the internal Sets the register to specified values so that the <> 5 User programs anywhere with a defined state of the CPU 3 can be started. After the CPU register «I; may be used more because they have already been set to certain values, is a relatively high level of hardship for this too. e-Auiwi:; d necessary «.
Ein-Chip-Mikrocomputer mit auf einem Chip integriertem Mikroprozessor und Festwertspeicher (PROM) sind z. B. aus »Electronic Engineering«, Februar 1977, Heft 588, Seiten 59 und 61, bekannt Sie weisen jedoch nicht zwei Speicher auf, die abwechselnd auf einen Befehlszähler und auf ein Befehlsregister mit daran angeschlossenen Befehlsdecoder zu schalten sind.One-chip microcomputer with integrated on a chip Microprocessor and read-only memory (PROM) are z. B. from "Electronic Engineering", February 1977, issue 588, pages 59 and 61, known. However, they do not have two memories that alternate are to be switched to an instruction counter and an instruction register with an instruction decoder connected to it.
Bei Verwendung von solchen auf einem Halbleiterchip integrierten Mikrocomputern besteht gegenüber der Anordnung nach F i g. 1 ein wesentlicher Unterschied darin, daß eine CPU sowie ein Programmspeicher in Form eines Festwertspeichers (ROM) auf einem einzigen Chip integriert sind. Die dabei auftretenden Verhältnisse sind in Fig.2 dargestellt Bei einer Anwendung eines Emulations- und Test-Adapters nach F i g. 2 wird mit der CPU 3 sowie dem mit ihr auf einem Chip integrierten ROM 3' auch der Benutzerprogrammspeicher 2 aus dem Gerät 1 ^r.tfernt Über die Verbindung des Emulations- und Test-Adapters mit dem zu steuernden Gerät wird nur noch die Ein-/Ausgabe des Mikrocomputers 3, 3' über eine Ein-/Ausgabeeinheit 6 abgewickeltWhen using such microcomputers integrated on a semiconductor chip, there is an opposite the arrangement according to FIG. 1 an essential difference in that a CPU and a program memory are integrated in the form of a read-only memory (ROM) on a single chip. The occurring Relationships are shown in FIG. 2 when using an emulation and test adapter F i g. 2 becomes the user program memory with the CPU 3 and the ROM 3 'integrated with it on a chip 2 removed from device 1 ^ r. Via the connection of the emulation and test adapter with the device to be controlled is only the input / output of the microcomputer 3, 3 'via a Input / output unit 6 handled
Da das ROM 3' das eventuell fehlerhafte, noch zu ändernde Benutzerprogramm nicht aufnehmen kann, muß dieses in einem weiteren externen Benutzerprogrammspeicher 2 im Emulations- und Test-Adapter untergebracht werden. Ferner enthält der Emulationsund Test-Adapter wiederum einen Umschalter 5 sowie einen weiteren Speicher 4 für das ETA-Programm. Die CPU 3 darf dabei nicht das (wertlose) Programm im ROM 3' interpretieren, sondern muß alle Befehle von außen lesen. Ein Emulations- und Test-Adapter nach F i g. 2 arbeitet im Prinzip ebenso wie der Emulationsund Test-Adapter nach F i g. 1.Since the ROM 3 'cannot accept the possibly faulty user program that has yet to be changed, this must be in a further external user program memory 2 in the emulation and test adapter be accommodated. Furthermore, the emulation and test adapter again contains a switch 5 as well another memory 4 for the ETA program. The CPU 3 must not use the (worthless) program in the Interpret ROM 3 ', but must read all commands from outside. An emulation and test adapter according to F i g. 2 works in principle in the same way as the emulation and test adapter according to FIG. 1.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, einen Mikrocomputer der in Rede stehenden Art anzugeben, bei dem der oben erläuterte beträchtliche Hardware-Aufwand für die Umschaltung zwischen Benutzerprogrammspeicher und ETA-Speicher reduzierbar ist.The present invention has for its object to provide a microcomputer of the type in question Specify type in which the considerable hardware effort explained above for switching between User program memory and ETA memory can be reduced.
Diese Aufgabe wird bei einem Mikrocomputer der eingangs genannten Art erfindungsgemäß durch die im kennzeichnenden Teil des Anspruch* 1 genannten Merkmale gelöst.In a microcomputer of the type mentioned at the outset, this object is achieved according to the invention by the im characterizing part of claim * 1 mentioned features solved.
Ausgestaltungen des Erfindungsgedankens sind in Unteransprüchen gekennzeichnetRefinements of the inventive concept are characterized in the subclaims
Die Erfindung wird im folgenden anhand von in den F i g. 3 bis 5 der Zeichnung dargestellten Ausführungsbeispiclen näher erläutert. Es zeigtThe invention is illustrated below with reference to FIGS. 3 to 5 of the drawing shown Ausführungsbeispiclen explained in more detail. It shows
F i g. 3 eine schematische Darstellung entsprechend den F \ g. 1 und 2 zur Erläuterung eines erfindungsgemäßen Mikrocomputers,F i g. 3 is a schematic representation corresponding to F \ g. 1 and 2 to explain a microcomputer according to the invention,
F i g. 4 ein Blockschaltbild einer Ausführungsr'orm eines in einer CPU vorgesehenen Umschalters für die Umschaltung vom Benutzerprogrammspeicher auf den Testprogrammspeicher und umgekehrt; undF i g. 4 is a block diagram of an embodiment a switch provided in a CPU for switching from the user program memory to the Test program memory and vice versa; and
Fig.5 in scht.natischer Blockform eine in der Schaltung nach Fig.4 verwendeten Adressen- und Transfer-Logik.Fig. 5 in scht.natischer block form one in the Circuit according to Figure 4 used address and transfer logic.
Generell gesprochen be/.hht sich die Erfindung auf eine Emulations- und Tesi-Adapterstruktur mit einem Ein-Chip-Mikrcconiputer. In dar Anordnung nach F i g. j >st die.-; didu. cn angsdeutet, daß die Cr L' i um; das ROM 3' ebenso wie bei der Anordnung nach F i 6\ 2 als eine Einheit dareesteih sind. Im übrieen sind inGenerally speaking, the invention relates to an emulation and Tesi adapter structure with a one-chip microcontroller. In the arrangement according to FIG. j> st die.-; didu. cn angsrepresents that the Cr L 'i um; the ROM 3 'as well as in the arrangement according to F i 6 \ 2 are shown as a unit. Incidentally, in
Fig.3 gleiche Elemente wie in der Anordnung nach F i g. 2 mit gleichen Bezugszeichen versehen.3 the same elements as in the arrangement according to FIG. 2 are provided with the same reference numerals.
Die Erfindung geht von der Annahme aus, daß das ETA-Programm, das die selbständigen Funktionen des Emulations- und Test-Adapters ETA steuert, fest ist und damit im ROM 3' des Mikrocomputers 3, 3' untergebracht werden kann. Um dies durchführen zu können, ist es erforderlich, daß die CPU entweder nur Befehle aus externen Benutzerprogrammspeichern 2 oder aus dem das ETA-Programm enthaltenden ROM 3' entgegen- in nimmt. Dazu ist in der CPU 3 eine Umschaltung erforderlich, welche anhand von F i g. 3 generell erläutert wird. Die Umschaltung in einen Schaltzustand, in dem die CPU 3 nur Befehle aus dem externen Benutzerprogrammspeicher 2 aufnimmt, erfolgt durch ii einen mit CEP bezeichneten Befehl (Call External Program), der als Spezifikation die Adresse benötigt, an der das im Benutzerprogrammspeicher 2 stehende Benutzerprogramm gestartet werden soll. Da dieseThe invention is based on the assumption that the ETA program, which controls the independent functions of the emulation and test adapter ETA, is fixed and can thus be accommodated in the ROM 3 'of the microcomputer 3, 3'. In order to be able to do this, it is necessary that the CPU either only receives commands from external user program memories 2 or from the ROM 3 'containing the ETA program. For this purpose, a switchover is required in the CPU 3, which is based on FIG. 3 is explained in general. Switching to a switching state in which the CPU 3 only accepts commands from the external user program memory 2 is carried out by means of a command labeled CEP (Call External Program), which requires the address at which the user program in the user program memory 2 is started as a specification shall be. This one
Programmierung vorgcbbnrProgramming vorgcbbnr
ist, kann sie nicht im ROM 3' stehen, in dem sonst der Rest des Testprogramms untergebracht ist. Ferner darf kein CPU-Register zur Unterbringung der Adresse verwendet werden, da diese Register vorher auf definierte, durch Programmierung vorgebbare Werte r> gesetzt sind. Da jedoch der externe Benutzerprogrammspeicher 2 als Schreib-Lesespeicher ausbildbar ist, bietet sich dieser als Speichermedium für die Sprungadresse des CfP-Befehls an. Die für diese Adresse vorgesehene Stelle im Benutzerprogrammspei- jo eher 2 darf für das Benutzerprogramm nicht verwendet werden, da sie ja ebenfalls im Benutzerprogrammspeicher 2 steht. Daher wird als Stelle für die Adressenspezifikation des CEP-Befehls vorzugsweise der Rand (zum Beispiel die Adresse 0) des Benutzerprogrammspeichers j5 2 gewählt, damit keine wesentliche Einschränkung in der Adressenzuordnung für das Benutzerprogramm eintritt.is, it cannot be in ROM 3 ', in which the rest of the test program is otherwise accommodated. Furthermore, may No CPU register can be used to accommodate the address as this register was previously on defined, programmable values r> are set. However, since the external user program memory 2 can be designed as read-write memory, this offers itself as a storage medium for the Jump address of the CfP command. The for this Address intended location in user program memory rather 2 must not be used for the user program, since it is also in the user program memory 2 stands. Therefore, the border (to the Example the address 0) of the user program memory j5 2 was chosen so that there are no significant restrictions in the address assignment for the user program entry.
Durch den CfP-Befehl wird also die Umschaltung der CPU 3 vom ROM 3' (also vom ETA-Programm) zur Ausführung des Benutzerprogramms auf den Benutzerprogrammspeicher 2 umgeschaltet.The CfP command is used to switch the CPU 3 from ROM 3 '(i.e. from the ETA program) for executing the user program on the user program memory 2 switched.
Die Umschaltung der CPU 3 vom Benutzerprogrammspeicher 2 auf das das ETA-Programm enthaltende ROM 3' wird durch einen weiteren mit EIP bezeichneten Befehl (Execute Internal Program) ausgeführt Dieser £YP-Befehl kann entweder im zu testenden Benutzerprogramm stehen oder von außen eingegeben werden. Im ersten Falle können Unterbrechungen durchgeführt werden, die direkt aus dem Ablauf des Benutzerprogramms gewonnen werden, während im letzteren Fall auch externe Unterbrechungen, welche beispielsweise vom zu steuernden Gerät 1 über die Ein/Ausgabeeinheit 6 kommen, berücksichtigt werden können.The switchover of the CPU 3 from the user program memory 2 to the ROM 3 'containing the ETA program is carried out by another command labeled EIP (Execute Internal Program). This £ YP command can either be in the user program to be tested or entered externally. In the first case, interruptions can be carried out that are obtained directly from the sequence of the user program, while in the latter case external interruptions, which come, for example, from the device 1 to be controlled via the input / output unit 6, can also be taken into account.
Der £7P-Befehl benötigt keine Adressenspezifikation, weil bei einem Übergang vom Etenutzerprogrammspeicher 2 auf das ROM 3' das ETA-Programm an einer festen Stelle gestartet werden kann.The £ 7P command does not require an address specification, because at a transition from the user program memory 2 on the ROM 3 'the ETA program can be started at a fixed point.
Beim Umschalten vom Benutzerprogrammspeicher 2 bo auf das ROM 3' müssen vom ETA-Programm unmittelbar nach der Ausführung des £7P-Befehls die aktuellen Registerinhalte in der CPU 3 in einem externen Schreib-Lesespeicher abgespeichert werden. Da dieser Speicher im Mikrocomputer 3, 3' nicht vorhanden ist, bi bietet sich für dieser. Zweck der Benutzerprogrammspeicher 2 an, wenn in diesem Speicher zusätzlich zum Platz für die Spezifikation des CEP-Befehls und dem Adressenbereich für das Benutzerprogramm ein weiterer Adressenbereich für die Inhalte der CPU-Register reserviert sind, so daß sie mittels spezieller Transferoperationen vom ETA-Programm dorthin überführt werden können. Auch dieser Adressenbereich ist dann natürlich für das Benutzerprogramm gesperrt, was jedoch keine wesentliche Einbuße bedeutet.When switching from the user program memory 2 bo to the ROM 3 ', the ETA program must immediately after the execution of the £ 7P command, the current register contents in the CPU 3 in an external one Read / write memory can be stored. Since this Memory in the microcomputer 3, 3 'is not available, bi lends itself to this. Purpose of the user program memory 2, if in this memory in addition to the Another space for the specification of the CEP command and the address range for the user program Address areas are reserved for the contents of the CPU registers so that they can be accessed using special transfer operations can be transferred there from the ETA program. This address range is then also locked for the user agent, of course, but this does not mean any significant loss.
Eine mögliche Ausführungsform zur Umschaltung der CPU 3 vom Benutzerprogrammspeicher 2 auf das ROM 3' und umgekehrt ist in F i g. 4 dargestellt.A possible embodiment for switching the CPU 3 from the user program memory 2 to the ROM 3 'and vice versa is in FIG. 4 shown.
In dieser Schaltung nach F i g. 4 bilden ein Befehlszähler 20, ein Befehlsregister 21 sowie ein Befehlsdecoder 22 Teile der CPU 3 nach Fig. 3. Weitere an der Umschaltung nicht beteiligte Komponenten der CPU sind in F i g. 4 nicht dargestellt.In this circuit according to FIG. 4 form an instruction counter 20, an instruction register 21 and an instruction decoder 22 parts of the CPU 3 according to FIG. 3. Further components of the CPU not involved in the switchover are in Fig. 4 not shown.
Als zentrale Umschaltstufe der CPU zwischen dem (in Fig.4 nicht dargestellten) Benutzerprogrammspeicher und dem ROM 3' dient ein Flip-Flop 23, das an einem Setzeingang 5 durch den Befehl EIP und an einem RiicksSizeirigSP.g R durch den B?f?hl CFP ansteuerhar ist. Ein Ausgang Qdes Flip-Flops ?3 sowie ein Ausgang des Befehlszählers 20 sind auf ein UND-Gatter 24 geführt, über dessen Ausgang das ROM 3' angesteuert wird. Weiterhin sind der Ausgang Q des Flip-Flops 23 über einen Inverter 25 und der Ausgang des Befehlszählers 20 direkt auf Eingänge eines UND-Gatters 26 geführt, dessen Ausgang über cifisn Anschluß 41 zum Benutzerprogrammspeicher führt.The central switching circuit of the CPU between the (in Figure 4, not shown) and the user program memory ROM 3 'serves a flip-flop 23, the f at a set input 5 by the command EIP and at a RiicksSizeirigSP.g R by the B? hl CFP is controllable. An output Q of the flip-flop? 3 and an output of the command counter 20 are led to an AND gate 24, via the output of which the ROM 3 'is controlled. Furthermore, the output Q of the flip-flop 23 via an inverter 25 and the output of the command counter 20 are led directly to the inputs of an AND gate 26, the output of which leads via cifisn connection 41 to the user program memory.
Zur ',"cernahme von Befehlen vom Benutzerprogrammspeicher, welche über einen Anschluß 40 eingegeben werden, beziehungsweise vom ROM 3' sind zwei UND-Gatter 27 und 29 vorgesehen. Diese UND-Gatter werden an einem Eingang dierekt vom ROM 3' (UND-Gatter 27) beziehungsweise vom Benutzerprogrammspeicher über den Anschluß 40 (UND-Gatter 29) direkt angestüuer!. Her A=;^.^ Q des Flip-Flops ?? ist über einen Inverter 28 auf einen weiteren Eingang des UND-Gatters 29 beziehungsweise direkt auf einen weiteren Eingang des UND-Gatters 27 geführt. Die Ausgänge der beiden UND-Gatter 27 und 29 sind über ein ODER-Gatter 30 an das Befehlsregister 21 angekoppelt, das seinerseits auf den Befehisdecoder 22 geführt ist.Two AND gates 27 and 29 are provided for receiving commands from the user program memory, which are entered via a connection 40 or from the ROM 3 '. These AND gates are input directly from the ROM 3' (AND gate 27) or from the user program memory via the connection 40 (AND gate 29) directly controlled! Her A =; ^. ^ Q of the flip-flop ?? is via an inverter 28 to a further input of the AND gate 29 or directly Another input of the AND gate 27. The outputs of the two AND gates 27 and 29 are coupled via an OR gate 30 to the command register 21, which in turn is routed to the command decoder 22.
Zur Ausgabe von Adressen für den Benutzerprogrammspeicher über einen Anschluß 42 beziehungsweise des Registerinh<s :3er CPU über einen Anschluß 43 zum Benutzerprogi^mmspeicher ist eine vom ElP-Befehl angesteuerte Adressen- und Transfer-Logik vorgesehen. Der /7A Befehl kann entweder ai's dem Benutzerprogrammspeicher über den Befehlsdecoder 22 kommen oder extern über einen Anschluß 44 eingegeben werden. Die Ankopplung des E/P-Bcfehls an das Flip-Flop 23 beziehungsweise an die Adressen- und Transfer-Logik 31 erfolgt über ein ODER-Gatter 32.To output addresses for the user program memory via a connection 42 or the register content: 3 CPU via a connection 43 to the user program memory, an address and transfer logic, which is incorrectly controlled by the EIP command, is provided. The / 7A command can either come to the user program memory via the command decoder 22 or be entered externally via a connection 44. The coupling of the E / P command to the flip-flop 23 or to the address and transfer logic 31 takes place via an OR gate 32.
Zur Erläuterung der Wirkungsweise der Schaltungsanordnung nach F i g. 4 sei davon ausgegangen, daß ein CEP-Befehl vorhanden ist, welcher das Flip-Flop 23 über seinen Rücksetzeingang R rücksetzt so daß sein Ausgang Q auf einen tiefen Pegel (Bit 0) geschaltet wird. Damit werden die UND-Gatter 24 und 27 gesperrt, so daß das ROM 3' keine Signale mehr aus dem Befehlszähler 20 aufnehmen und auch keine Befehle auf das Befehlsregister 21 geben kann. Da jedoch der tiefe Pegel am Ausgang Q des Flip-Flops 23 durch den Inverter 25 invertiert wird, wird das UND-Gatter 26 wirksam geschaltet, so daß der Befehlszähler 20 über den Anschluß 41 auf den BenutzerprogrammspeicherTo explain the mode of operation of the circuit arrangement according to FIG. 4 it is assumed that a CEP command is present which resets the flip-flop 23 via its reset input R so that its output Q is switched to a low level (bit 0). The AND gates 24 and 27 are thus blocked, so that the ROM 3 'can no longer receive any signals from the command counter 20 and also cannot issue any commands to the command register 21. However, since the low level at the output Q of the flip-flop 23 is inverted by the inverter 25, the AND gate 26 is activated so that the command counter 20 via the terminal 41 to the user program memory
arbeiten kann. Da weiterhin der tiefe Pegel am Ausgang Q des Flip-Flops 23 auch durch den Inverter 28 invertiert wird, wird auch das UND-Gatter 29 wirksam geschaltet, so daß das Befehlsregister 21 über den Anschluß 40 Befeh'e des Benutzerprogramms aus dem ·> Benutzerprogrammspeicher über den Anschluß 40 übernehmen kann, welche im Befehlsdecoder 22 decodiert werden. In diesem Schaltzustand ist also die CPU amiden Benutzerprogrammspeicher umgeschaltet, so daß siy das in diesem Speicher stehende Benutzerprogramm abarbeiten kann.can work. Further, since the deep level at the output Q of the flip-flop is also inverted by the inverter 28 23, and the AND gate is switched to be effective 29 so that the instruction register 21 via the terminal 40 Befeh'e of the user program from the ·> user program memory via the connection 40, which are decoded in the command decoder 22. In this switching state, the CPU is switched to the user program memory so that it can process the user program in this memory.
Wird nun im Benutzerprogramm eine Stel'e erreicht, in welcher ein f/P-Befehl steht, oder wird ein externer E/P-Befehl über den Anschluß 44 eingegeben, so wird das Flip-Flop an seinem Setzeingang 5 durch diesen r. Befehl gesetzt, so daß sein Ausgang Q auf einen hohen Pegel (Bit 1) umschaltet. Damit werden nun die UND-Gatter 24 und 27 wirksam geschaltet, während die UND-Gatter 26 und 29 auf Grund der zwischengeschalteten Inverter 25 und 28 gesperrt werden. Der Befehlszähler 20 kann nunmehr über das UND-Gatter 24 auf das ROM 3' arbeiten, so daß die Befehle des in diesem ROM stehenden ETA-Programms über das UND-Gatter 27 auf das Befehlsregister 21 und den Befehlsdecoder 22 gegeben werden.If a position is now reached in the user program in which there is an f / P command, or if an external E / P command is entered via terminal 44, the flip-flop at its set input 5 is activated by this r. Command set so that its output Q switches to a high level (bit 1). The AND gates 24 and 27 are now activated, while the AND gates 26 and 29 are blocked due to the inverters 25 and 28 connected in between. The command counter 20 can now work on the ROM 3 'via the AND gate 24, so that the commands of the ETA program in this ROM are given to the command register 21 and the command decoder 22 via the AND gate 27.
Gleichzeitig schaltet der ElP-BeieM die Adressen- und Transfer-Logik 31 wirksam, so daß der Registerinhalt der CPU sowie die entsprechende Adresse über die Anschlüsse 43 und 42 ausgegeben werden.At the same time, the EIP-BeieM activates the address and transfer logic 31 so that the register contents of the CPU and the corresponding address are output via the connections 43 and 42.
Da die Adressen- und Transfer-Logik 31 für den 3n vorstehend erläuterten Umschaltvorgang der CPU im Sinne (';r Erfindung nicht von primärer Bedeutung ist, wird diese Logik hier nicht näher erläutert.Since the address and transfer logic 31 for the 3n above-explained switching process of the CPU in Meaning ('; r invention is not of primary importance, this logic is not explained in detail here.
Gemäß Fig.5 kann diese Logik 31 eine Datentransferstufe 51 zur Übernahme des Inhalts der Register der CPU sowie einen Adressengenerator 50 enthalten, welche von einem Eingang 52 vom E/P-Befehl angesteuert werden.According to FIG. 5, this logic 31 can be a data transfer stage 51 for taking over the contents of the registers of the CPU as well as an address generator 50 included, which are controlled by an input 52 of the E / P command.
Es sei darauf hingewiesen, daß in der Schaltungsanordnung nach F i g. 4 lediglich schematisch die Übernahme des Inhalts des Befehlszählers 20 der CPU über die Adressen- und Transfer-Logik 31 in de Benutzerprogrammspeicher dargestellt ist. Es ist jedoch ohne weiteres möglich, bei der Umschaltung vom Benutzerprogrammspeicher auf das das ETA-Programm enthaltende ROM 3' den Inhalt weiterer (nicht dargestellter) Register der CPU über die Adressen- und Transfer-Logik 31 in den Benutzerprogrammspeicher zu übernehmen. It should be noted that in the circuit arrangement according to FIG. 4 only schematically shows the takeover the content of the command counter 20 of the CPU via the address and transfer logic 31 in de user program memory is shown. However, it is easily possible when switching over from the user program memory on the ROM 3 'containing the ETA program the content of further (not shown) To take over the register of the CPU via the address and transfer logic 31 in the user program memory.
Es ist weiterhin zu beachten, daß im Rahmen der Erfindung die Anschlüsse 41 und 42 beziehungsweise 40 und 43 gemeinsame Leitungen benützen können.It should also be noted that in the context of the invention, the connections 41 and 42 or 40 and 43 shared lines.
Der vorstehend erläuterte Mikrocomputer besitzt den wesentlichen Vorteil, daß ein externer Speicher für das ETA-Programm (Speicher 4 in den Fig. 1 und 2) sowie der aufwendige externe Umschalter (Schalter 5 in den F i g. 1 und 2) entfallen können.The above-mentioned microcomputer has the significant advantage that an external memory for the ETA program (memory 4 in Figs. 1 and 2) and the complex external switch (switch 5 in the F i g. 1 and 2) can be omitted.
Die beiden auszuführenden Befehle CEP und EIP erfordern in der CPU 3 einen so geringen zusätzlichen Hardware-Aufwand, daß sie auch ohne eine zu hohe Redundanz in CPU-Bausteine der Serienfertigung eingebaut werden können. Damit sind für einen Echtzeit-Test-Adapter Serien-Mikrocomputer verwendbar. The two commands to be executed, CEP and EIP, require so little additional hardware outlay in the CPU 3 that they can also be built into series production CPU modules without excessive redundancy. This means that serial microcomputers can be used for a real-time test adapter.
Hierzu 2 Blau ZeichntincenFor this purpose 2 blue drawing inks
Claims (6)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782808580 DE2808580C2 (en) | 1978-02-28 | 1978-02-28 | Microcomputer with a microprocessor integrated on a chip and a read-only memory |
FR7904385A FR2418496A1 (en) | 1978-02-28 | 1979-02-21 | EMULATION AND TEST ADAPTER FOR DEVELOPING AND TESTING A USER PROGRAM INTENDED FOR COMPUTER CONTROL OF THE PERFORMANCE OF THE FUNCTION OF A DEVICE |
JP1960679A JPS54124648A (en) | 1978-02-28 | 1979-02-21 | User program development and test emulation and test adapter |
GB7906949A GB2015214B (en) | 1978-02-28 | 1979-02-27 | Micro-computer programme test-adapter |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19782808580 DE2808580C2 (en) | 1978-02-28 | 1978-02-28 | Microcomputer with a microprocessor integrated on a chip and a read-only memory |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2808580A1 DE2808580A1 (en) | 1979-08-30 |
DE2808580C2 true DE2808580C2 (en) | 1982-11-25 |
Family
ID=6033156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19782808580 Expired DE2808580C2 (en) | 1978-02-28 | 1978-02-28 | Microcomputer with a microprocessor integrated on a chip and a read-only memory |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPS54124648A (en) |
DE (1) | DE2808580C2 (en) |
FR (1) | FR2418496A1 (en) |
GB (1) | GB2015214B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4400798A (en) * | 1981-07-13 | 1983-08-23 | Tektronix, Inc. | Memory patching system |
JPS61169941A (en) * | 1985-01-22 | 1986-07-31 | Sony Corp | Memory device |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2238496A1 (en) * | 1972-08-04 | 1974-02-14 | Siemens Ag | METHOD OF TESTING MICRO-PROGRAM CONTROLLED PROCESSORS |
US3987420A (en) * | 1973-12-28 | 1976-10-19 | Ing. C. Olivetti & C., S.P.A. | Electronic computer with equipment for debugging operative programs |
-
1978
- 1978-02-28 DE DE19782808580 patent/DE2808580C2/en not_active Expired
-
1979
- 1979-02-21 FR FR7904385A patent/FR2418496A1/en active Pending
- 1979-02-21 JP JP1960679A patent/JPS54124648A/en active Pending
- 1979-02-27 GB GB7906949A patent/GB2015214B/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
FR2418496A1 (en) | 1979-09-21 |
DE2808580A1 (en) | 1979-08-30 |
JPS54124648A (en) | 1979-09-27 |
GB2015214A (en) | 1979-09-05 |
GB2015214B (en) | 1982-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1248198B1 (en) | Program-controlled unit with emulation units | |
EP0466969B1 (en) | Method for preventing unauthorised deviations from an application development protocol in a data exchange system | |
DE4331703C2 (en) | Electronic device | |
DE2844357A1 (en) | MEMORY EXPANSION | |
EP0500973B1 (en) | EEPROM and method for altering a bootstrap routine in the EEPROM | |
DE3048365A1 (en) | MEMORY PROTECTION SYSTEM AND DATA PROCESSING SYSTEM WITH SUCH A MEMORY PROTECTION SYSTEM | |
DE2907181A1 (en) | COMMAND SET MODIFYING REGISTER FOR A DATA PROCESSOR | |
DE4418892C2 (en) | Microcomputer | |
DE2646162B2 (en) | Circuit arrangement for replacing incorrect information in memory locations of a non-changeable memory | |
DE2536622C2 (en) | Branch control with flexible selection of control words | |
DE2926322A1 (en) | STORAGE SUBSYSTEM | |
DE3833938C2 (en) | ||
DE2935101C2 (en) | ||
DE10147138A1 (en) | Method for integrating imperfect semiconductor memory devices in data processing devices | |
EP1889128B1 (en) | Method and device for switching in a memory for a control device | |
DE3323824A1 (en) | PROGRAMMABLE CONTROL | |
DE2808580C2 (en) | Microcomputer with a microprocessor integrated on a chip and a read-only memory | |
DE3210616A1 (en) | COMPUTER | |
DE4107052A1 (en) | Control unit esp. for ignition and fuel injection in motor vehicle - has RAM emulation memory allowing data to be manipulated to suit different conditions | |
DE4303406C2 (en) | Method for changing the content of a register of a microcomputer | |
DE19903302B4 (en) | Method and device for checking the function of a computer | |
DE3235264A1 (en) | DATA PROCESSING DEVICE AND METHOD | |
DE10127124A1 (en) | Electronic circuit for chip card interfaces has communication device switched between alternate chip card interfaces with selective activation of corresponding analogue interface | |
WO1999067791A1 (en) | Electronic test memory device | |
EP1248195B1 (en) | Test of connection state between a programmable unit and a circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8340 | Patent of addition ceased/non-payment of fee of main patent |