DE69331292T2 - Elektronisches Gerät und Verfahren zur festen Informationsmodifikation - Google Patents

Elektronisches Gerät und Verfahren zur festen Informationsmodifikation

Info

Publication number
DE69331292T2
DE69331292T2 DE69331292T DE69331292T DE69331292T2 DE 69331292 T2 DE69331292 T2 DE 69331292T2 DE 69331292 T DE69331292 T DE 69331292T DE 69331292 T DE69331292 T DE 69331292T DE 69331292 T2 DE69331292 T2 DE 69331292T2
Authority
DE
Germany
Prior art keywords
correction
address
program
interrupt
memory
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
DE69331292T
Other languages
English (en)
Other versions
DE69331292D1 (de
Inventor
Katsumi Matsuno
Iwao Yamamoto
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Application granted granted Critical
Publication of DE69331292D1 publication Critical patent/DE69331292D1/de
Publication of DE69331292T2 publication Critical patent/DE69331292T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/328Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address for runtime instruction patching
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3861Recovery, e.g. branch miss-prediction, exception handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Description

  • Elektronische Vorrichtung sowie Festinformations-Korrekturverfahren für eine solche elektronische Vorrichtung
  • Hintergrund der Erfindung Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf eine elektronische Vorrichtung, wie auf einen Ein-Chip-Mikrocomputer, der beispielsweise in elektronischen Vorrichtungen eingebaut bzw. eingesetzt ist.
  • Beschreibung der zugehörigen Technik
  • Ein Ein-Chip-Mikrocomputer, der beispielsweise in elektronischen Geräten eingebaut bzw. eingesetzt ist, besteht aus einer elektronischen Vorrichtung, in der eine Festspeichereinrichtung (Lesespeicher ROM), eine Verarbeitungseinrichtung (zentrale Verarbeitungseinheit CPU), eine Eingabeeinrichtung, eine veränderbare Speichereinrichtung (Schreib-Lese-Speicher RAM mit wahlfreiem Zugriff), etc. einheitlich integriert sind.
  • In einer derartigen elektronischen Vorrichtung (Ein-Chip- Mikrocomputer ist bzw. wird ein Programm für die Verarbeitung in der Verarbeitungseinrichtung (CPU) beispielsweise in der Festpeichereinrichtung (ROM) gespeichert. Dies heißt, dass eine besondere Verarbeitung entsprechend einer Information (Verarbeitungsprogramm) ausgeführt wird, die in der Festspeichereinrichtung (ROM) gespeichert ist. Falls eine derartige Festspeichereinrichtung beispielsweise durch einen Masken-ROM-Speicher gebildet ist, dann kann eine derartige elektronische Vorrichtung durch Massenproduktion preiswert hergestellt werden.
  • Die obigen elektronischen Vorrichtungen sind in elektronischen Geräten, wie einem Verbraucher-Videobandrecorder mit eingebauter Kamera, einem Kompakt-Videodeck oder dergleichen eingebaut bzw. eingesetzt. Es gibt einen neuen Trend, die elektronischen Geräte (Verbraucher-Videobandrecorder mit eingebauter Kamera oder dergleichen) so auszulegen, dass sie über Mehrfachfunktionen verfügen, um die Produkte voneinander zu unterscheiden. Als Ergebnis ist eine in der Festspeichereinrichtung (ROM) gespeicherte Informationsmenge (Verarbeitungsprogramm) vergrößert, und insbesondere wird das Verarbeitungsprogramm extrem lang, was unvermeidbar das Auftreten eines Fehlers (Programmfehlers) hervorruft.
  • Wenn ein derartiger Programmfehler entdeckt wird, nachdem die Vorrichtung in Massenproduktion hergestellt werden ist, muß die Vorrichtung, die bereits in Massenproduktion hergestellt worden ist, verworfen werden, und die betreffende Vorrichtung muß erneut in Massenproduktion hergestellt werden. Ferner müssen äußere Teile zur Korrektur des Programmfehlers an der Vorrichtung angebracht werden. Es ist indessen eine Menge Geld erforderlich, wenn die Vorrichtung in Massenproduktion erneut hergestellt wird. Verschiedentlich wird auch beobachtet, dass externe Teile nicht tatsächlich an dem elektronischen Gerät angebracht werden können, da verschiedene Teile bereits an dem elektronischen Gerät in hoher Dichte angebracht wurden.
  • Ein maskenprogrammierbarer Mikroprozessor, in welchem sämtliche Merkmale des Oberbegriffs des Anspruchs 1 angegeben sind, ist in der EP-A-0 458 559 beschrieben. Ferner hat die Anmelderin der vorliegenden Anmeldung bereits eine Einrichtung vorgeschlagen zur Korrektur eines Programmfehlers nach Herstellung einer Vorrichtung in Massenproduktion (siehe japanische Patentanmeldung Nr. 3-118799).
  • Gemäß diesen Anwendungen in der elektronischen Vorrichtung sind eine Korrekturinformations-Speichereinrichtung zur Softwarekorrektur eines Programmfehlers und eine Zugriffs-Schalteinrichtung vorgesehen. Ein Programmfehlerbereich wird auf der Grundlage einer in einer Festspeichereinrichtung gespeicherten Information diskriminiert. In dem betreffenden Programmfehlerbereich wird der Zugriff von der Festspeichereinrichtung zu der Korrekturinformations-Speichereinrichtung umgeschaltet.
  • Wenn bei dieser zuvor vorgeschlagenen Vorrichtung konstant in einer bestimmten sequentiellen Reihenfolge auf eine in der Festspeichereinrichtung (ROM) gespeicherte Information (Verarbeitungsprogramm) zugegriffen wird, falls der nächste Korrekturbereich am Ende der Verarbeitung bezeichnet wird, bei dem ein beliebiger Korrekturbereich korrigiert wird, dann kann eine Vielzahl von Programmfehlerbereichen sequentiell korrigiert werden.
  • Wenn bei dieser zuvor vorgeschlagenen Vorrichtung jedoch auf eine andere bzw. unterschiedliche Information durch eine Unterbrechung oder dergleichen zugegriffen wird, kann ein Programmfehler in einer solchen anderen Information nicht korrigiert werden. Speziell in dem Fall, dass ein zu korrigierender Bereich bei der ersten Unterbrechungs- bzw. Interrupt-Verarbeitung beispielsweise zu Beginn der Unterbrechungsverarbeitung festgelegt wird bzw. ist, ist der Zeitpunkt, zu dem diese Unterbrechungsverarbeitung selbst in der Hauptverarbeitung ausgeführt wird, nicht spezifiziert, und der zu korrigierende Bereich wird ein anderer in Abhängigkeit vom Zeitpunkt der Unterbrechungsverarbeitung, wenn die Unterbrechungsverarbeitung endet. Infolgedessen kann der nächste zu korrigierende Bereich nicht bestimmt werden.
  • Um das obige Problem zu lösen, sind gemäß dem Stand der Technik eine Korrekturinformations-Speichereinrichtung sowie eine Zugriffs-Schalteinrichtung vorgesehen für die Unterbrechungsverarbeitung unabhängig von jener der Hauptverarbeitung, wodurch ein Programmfehler während der Unterbrechungsverarbeitung korrigiert werden kann. Dieser Vorschlag benötigt jedoch viele zusätzliche Schaltungen. Wenn die Unterbrechungsverarbeitung in einer Mehrfachweise ausgeführt wird, ist ferner eine maximale Anzahl von Sätzen von Korrekturinformations- Speichereinrichtungen und Zugriffs-Schalteinrichtungen erforderlich, was nicht ohne weiteres zu Stande gebracht werden kann.
  • Ziele bzw. Aufgaben und Zusammenfassung der Erfindung
  • Es ist daher eine Aufgabe der vorliegenden Erfindung, eine verbesserte elektronische Vorrichtung bereitzustellen, in der die zuvor genannten Mängel und Nachteile des Standes der Technik eliminiert werden können.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, eine elektronische Vorrichtung bereitzustellen, in der ein Programmfehler, der nach einer Massenproduktion entdeckt worden ist, leicht korrigiert werden kann.
  • Es ist eine noch weitere Aufgabe der vorliegenden Erfindung, eine elektronische Vorrichtung bereitzustellen, in der ein Programmfehler während einer Unterbrechungsverarbeitung korrigiert werden kann.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein verbessertes Festinformations-Korrekturverfahren bereitzustellen, bei dem die zuvor genannten Mängel und Nachteile des Standes der Technik eliminiert werden können.
  • Es ist eine noch weitere Aufgabe der vorliegenden Erfindung, ein Festinformations-Korrekturverfahren bereitzustellen, bei bzw. mit dem ein Programmfehler leicht korrigiert werden kann, der nach einer Massenproduktion entdeckt worden ist.
  • Es ist eine noch weitere Aufgabe der vorliegenden Erfindung, ein Festinformations-Korrekturverfahren bereitzustellen, bei dem ein Programmfehler während einer Unterbrechungsverarbeitung korrigiert werden kann.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung ist eine elektronische Vorrichtung geschaffen, umfassend eine Festspeichereinrichtung, in der eine Information in einer festen Weise gespeichert ist,
  • eine Adressensteuereinrichtung zur Steuerung einer Adresse, eine Eingabeeinrichtung, durch die eine externe Information eingegeben wird,
  • eine Korrekturinformations-Speichereinrichtung zur Speicherung einer Korrekturinformation betreffend einen Bereich, der in der Information zu ändern ist, die in der Festspeichereinrichtung gespeichert ist,
  • eine Schaltsteuereinrichtung zum Schalten eines Speicherzugriffs durch die Adressensteuereinrichtung von der Festspeichereinrichtung zu der Korrekturinformations-Speichereinrichtung, wobei die Schaltsteuereinrichtung eine Unterbrechung für die Adressensteuereinrichtung erzeugt, um die Adressensteuereinrichtung zu veranlassen, eine Korrekturverarbeitungs-Unterbrechungsroutine auszuführen, wobei die betreffende Korrekturverarbeitungs-Unterbrechungsroutine eine Routine aus einer Vielzahl von Unterbrechungsverarbeitungsroutinen ist. Die Adressensteuereinrichtung weist einen ersten Speicher auf, in welchem Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs durch die Adressensteuereinrichtung zwischengespeichert werden bzw. sind, wenn eine Unterbrechungsverarbeitung ausgeführt wird, derart, dass die Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs während der Unterbrechungsverarbeitung in der Schaltsteuereinrichtung festgelegt werden können. Die Festspeichereinrichtung, die Adressensteuereinrichtung, die Eingabeeinrichtung, die Korrekturinformations-Speichereinrichtung und die Schaltsteuereinrichtung sind einheitlich in der elektronischen Vorrichtung integriert.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung ist ein Festinformations-Korrekturverfahren für den Betrieb einer elektronischen Vorrichtung geschaffen, die eine Festspeichereinrichtung, in der eine Information in einer festen Weise gespeichert wird, eine Adressensteuereinrichtung zur Steuerung einer Adresse, eine Eingabeeinrichtung, durch die eine externe Information eingegeben wird, eine Korrekturinformations-Speichereinrichtung zur Speicherung einer Korrekturinformation betreffend einen Bereich, der in der genannten Information zu ändern ist, welche in der genannten Festspeichereinrichtung gespeichert ist, und eine Schaltsteuereinrichtung zum Schalten des Speicherzugriffs durch die Adressensteuereinrichtung von der Festspeichereinrichtung zu der Korrekturinformations-Speichereinrichtung unter einer bestimmten Adresse aufweist, wobei die Schaltsteuereinrichtung eine Unterbrechung für die Adressensteuereinrichtung erzeugt, um die Adressensteuereinrichtung zu veranlassen eine Korrekturverarbeitungs-Unterbrechungsroutine auszuführen, wobei die betreffende Korrekturverarbeitungs-Unterbrechungsroutine eine Routine aus einer Vielzahl von Unterbrechungsverarbeitungsroutinen ist. Dieses Verfahren umfaßt die Schritte des Sicherns der Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs durch die Adressensteuereinrichtung zu einem ersten Speicher während des Beginns einer Unterbrechungsverarbeitung für die genannte Adressensteuereinrichtung und des Festlegens der Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs während der Unterbrechungsverarbeitung in der Schaltsteuereinrichtung. Die Festspeichereinrichtung, die Adressensteuereinrichtung, die Eingabeeinrichtung, die Korrekturinformations-Speichereinrichtung und die Schaltsteuereinrichtungen sind in der elektronischen Vorrichtung einheitlich integriert.
  • Gemäß der vorliegenden Erfindung wird die in der Festspeichereinrichtung gespeicherte Information durch die Information aus der Korrekturinformations-Speichereinrichtung korrigiert, und der Informationsfehler bzw. -programmfehler, der entdeckt wird, nachdem elektronische Vorrichtungen in Massenproduktion hergestellt sind, kann korrigiert werden. Durch Sichern der Diskriminierungs- bzw. Unterscheidungsdaten des Korrekturbereiches in einem Stapelspeicher kann ein Programmfehler während der Unterbrechungsverarbeitung korrigiert werden.
  • Die obigen sowie weitere Aufgaben bzw. Ziele, Merkmale und Vorteile der vorliegenden Erfindung werden aus der nachfolgenden detaillierten Beschreibung eines veranschaulichenden Ausführungsbeispiels der Erfindung in Verbindung mit den beigefügten Zeichnungen näher ersichtlich werden, in denen entsprechende Bezugszeichen zur Bezeichnung derselben oder ähnlichen Einzelteile in den verschiedenen Ansichten verwendet sind.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 zeigt in einem Blockdiagramm einen Aufbau einer elektronischen Vorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Fig. 2A und 2B zeigen Diagramme, die zur Erläuterung des Verarbeitungsprogramms herangezogen werden.
  • Fig. 3 zeigt ein Diagramm, welches zur Erläuterung einer Information herangezogen wird, die korrigiert werden sollte.
  • Fig. 4 zeigt ein Diagramm, welches zur Erläuterung der Arbeitsweise der vorliegenden Erfindung herangezogen wird.
  • Detaillierte Beschreibung der bevorzugten Ausführungsform.
  • Die vorliegende Erfindung wird nunmehr unter Bezugnahme auf die Zeichnungen beschrieben.
  • In Fig. 1 der beigefügten Zeichnungen bezeichnet das Bezugszeichen 10 generell Einen Ein-Chip-Mikrocomputer, der als elektronische Vorrichtung dient. Die elektronische Vorrichtung 10 weist eine Zentraleinheit (CPU) 1, die als Verarbeitungseinrichtung dient, einen Lesespeicher ROM 2, der als Festspeichereinrichtung dient, einen Schreib-Lese-Speicher RAM 3 mit beliebigem Zugriff, der als Korrekturinformations- Speichereinrichtung dient, eine Eingabeeinrichtung 4, beispielsweise einen Eingangs-/Ausgangs-(I/O)-Anschluß oder dergleichen auf. Die CPU 1, der ROM-Speicher 2, der RAM-Speicher 3 und die Eingabeeinrichtung 4 sind über eine Datenbusleitung 5 miteinander verbunden. Ein durch die CPU 1 gebildetes Adressenausgangssignal wird über einen Adressenbus 6 an die Adresseneingänge des ROM-Speichers 2 und des RAM-Speichers 3 abgegeben.
  • Es sind ein Korrekturbereichs-Adressenregister 7 und ein Korrekturunterbrechungs-Vektorregister 8 vorgesehen. Diese Register 7 und 8 sind mit dem Datenbus 5 verbunden. Ein Vergleicher bzw. Komparator 9 ist vorgesehen, der eine Koinzidenz zwischen der in dem Register 7 gespeicherten Adresse und der Adresse auf der Adressenbusleitung 6 ermittelt. Der Komparator 9 ist mit seinem Ausgangsteil, von dem ein für die Koinzidenz der Adressen kennzeichnendes Signal erhalten wird, mit einem Unterbrechungs-Steuerbereich X der CPU 1 verbunden. Die CPU 1 weist außerdem Unterbrechungs- bzw. Interrupt-Steuerbereiche A, B, C, ... für eine weitere bzw. andere Verarbeitung auf.
  • Mit der Eingabeeinrichtung 4 ist eine externe Speichervorrichtung 20 verbunden. Die externe Speichervorrichtung 20 kann auch in der elektronischen Vorrichtung eingebaut sein. Die externe Speichervorrichtung 20 besteht aus einem EEPROM- Speicher (das ist ein elektrisch löschbarer und programmierbarer ROM-Speicher), in welchem generell Parameter gespeichert werden bzw. sind, die bei dem Einstellprozess der elektronischen Vorrichtung, etc. erhalten werden. Eine Information von der externen Speichervorrichtung 20 wird über die Eingabeeinrichtung 4 abgegeben und dann in den RAM-Speicher 4 gespeichert, wodurch sie in der durch die CPU 1 erfolgenden Verarbeitung genutzt wird.
  • In der obigen elektronischen Vorrichtung 10 wird bzw. ist eine Programminformation für die Verarbeitung in der CPU 1 in dem ROM-Speicher 2 in einer festen Weise gespeichert. In diesem Verarbeitungsprogramm ist ein Aktivierungsprogramm vorgesehen, wie es beispielsweise in Fig. 2A veranschaulicht ist. Das Aktivierungsprogramm weist ein Programm zur Initialisierung der Vorrichtung, wie für den Fall, dass der RAM-Speicher 3 gelöscht wird, und ein Programm zur Übertragung der Information von der externen Speichervorrichtung 20 über die Eingabeeinrichtung 4 in den RAM-Speicher 3 oder dergleichen auf.
  • In dem in dem ROM-Speicher 2 gespeicherten Verarbeitungsprogramm sind ein Hauptprogramm zur Ausführung einer Hauptverarbeitung sowie Unterbrechungs- bzw. Interrupt-Programme für die Ausführung einer Vielzahl von Unterbrechungen bzw. Interrupts A, B, C, .... vorgesehen. Zu Beginn des Hauptprogramms ist ein Verarbeitungsprogramm vorgesehen, welches aus dem festen Tabellenbereich 31 des RAM-Speichers 3 in die Register 7 bzw. 8 eine Adresse eines ersten in den RAM-Speicher 3 eingeschriebenen Programmfehlerbereichs und Vektordaten einschreibt, die kennzeichnend sind für eine Startposition des Korrekturprogramms zur Korrektur des ersten Programmfehlerbereichs.
  • Zu Beginn jedes Unterbrechungs- bzw. Interrupt-Programms, wie dies in Fig. 2B veranschaulicht ist, ist eine Verarbeitung vorgesehen, bei der Daten, die in den Registern 7 und 8 geschrieben sind, in dem RAM-Speicher 3 in dessen Stapelbereich 32 gesichert werden, was später beschrieben wird. Diese Verarbeitung wird von einer Verarbeitung gefolgt, bei der eine Adresse eines ersten Korrekturbereichs entsprechend der Unterbrechung und Vektordaten, die kennzeichnend sind für eine Startposition eines Korrekturprogramms zur Korrektur des Programmfehlerbereichs der Unterbrechung, in die Register 7 bzw. 8 geschrieben werden. Am Ende des Unterbrechungs- bzw. Interrupt-Programms ist eine Verarbeitung vorgesehen, bei der die in dem Stapelbereich 32 gesicherten Daten wieder in die Register 7 und 8 geschrieben werden.
  • In der externen Speichervorrichtung 20 wird die Information gespeichert, die zur Korrektur eines Programmfehlers in der Information herangezogen wird, welche in dem ROM-Speicher 2 gespeichert ist, und zwar zusammen mit den Parametern, die bei den zuvor beschriebenen Einstellprozess erhalten worden sind. Die zur Korrektur des Programmfehlers herangezogene Information ist in Fig. 3 veranschaulicht, und sie weist eine Adresse eines ersten Programmfehlerbereichs entsprechend dem Hauptprogramm und der Unterbrechung, Vektordaten, die kennzeichnend sind für eine Startposition eines Korrekturprogramms zur Korrektur des ersten Programmfehlerbereiches sowie das Korrekturprogramm auf.
  • Durch die Verarbeitung des zuvor beschriebenen Aktivierungsprogramms wird sodann die Information von der externen Speichervorrichtung 20 in dem RAM-Speicher 3 über bzw. durch die Eingabeeinrichtung 4 gespeichert. Somit ist das Korrekturprogramm in einem Korrekturprogrammbereich des RAM-Speichers 3 gespeichert. Das Hauptprogramm, die Adresse des ersten Programmfehlerbereiches entsprechend der Unterbrechung und die Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur des ersten Programmfehlerbereiches, sind jedoch in den festen Tabellenbereich 31 des RAM-Speichers 3 geschrieben.
  • Demgemäß werden bei dieser Vorrichtung zu Beginn des Hauptprogramms nach der Aktivierung die Adresse des ersten Programmfehlerbereiches in dem Hauptprogramm und die Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur des ersten Programmfehlerbereiches, aus dem festen Tabellenbereich 31 des RAM-Speichers 3 ausgelesen und dann in die Register 7 und 8 eingeschrieben. Wenn das Hauptprogramm weiter fortschreitet und seine Adresse mit der Adresse des Registers 7 koinzidiert, wird sodann ein Signal an den Unterbrechungs- bzw. Interrupt-Steuerbereich X der CPU 1 abgegeben.
  • Damit wird auf Daten des Registers 8 durch die CPU 1 bei der Verarbeitung des Unterbrechungs-Steuerbereiches X Bezug genommen und ein Korrekturprogramm, welches an der durch die obigen Daten bezeichneten Position liegt, wird ausgeführt. Am Ende dieses Korrekturprogramms sind ferner eine Adresse des nächsten Korrekturbereiches des Unterbrechungs- bzw. Interrupt-Programms, Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur der Adresse, und eine Verarbeitung, durch die diese in die Register 7 bzw. 8 geschrieben werden bzw. sind, vorgesehen. Wie oben beschrieben, werden die Korrekturbereiche der Hauptprogramme sequentiell korrigiert.
  • Gemäß der oben erwähnten elektronischen Vorrichtung werden dann, wenn die Unterbrechungs- bzw. Interrupt-Verarbeitungen in den Interrupt-Steuerbereichen A, B, C, ... angefordert werden, die entsprechenden Interrupt-Verarbeitungen A, B, C, ... ausgeführt. Zu Beginn dieser Interrupt-Programme werden in die Register 7 und 8 eingeschriebene Daten in dem Stapelbereich 32 des RAM-Speichers 3 gesichert. Ferner werden die erste Korrekturbereichsadresse entsprechend der obigen Unterbrechung sowie die Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur der Adresse des Korrekturbereichs, aus dem festen Tabellenbereich 31 des RAM-Speichers 3 ausgelesen und dann in die Register 7 und 8 eingeschrieben. Wenn das Unterbrechungs- bzw. Interrupt-Programm fortschreitet und die Adresse mit der Adresse des Registers 7 koinzidiert, wird sodann ein Signal an den Unterbrechungs- bzw. Interrupt-Steuerbereich X der CPU 1 abgegeben.
  • Somit wird auf die Daten in dem Register 8 durch die CPU 1 für die Interrupt-Verarbeitung Bezug genommen, und sodann wird das Korrekturprogramm an der durch die betreffenden Daten bezeichneten Position ausgeführt. Ferner sind am Ende dieses Korrekturprogramms eine Adresse des nächsten Korrekturbereiches in dem Unterbrechungs- bzw. Interrupt-Programm und Vektordaten vorgesehen, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur der Adresse und einer Verarbeitung, durch die diese in die Register 7 bzw. 8 geschrieben werden. Auf diese Weise werden die Korrekturbereiche der Unterbrechungs- bzw. Interrupt-Programme sequentiell korrigiert. Ferner werden am Ende dieses Interrupt-Programms die in dem Stapelbereich 32 gesicherten Daten ein weiteres Mal in die Register 7 und 8 geschrieben.
  • Gemäß der oben erwähnten elektronischen Vorrichtung werden dann, wenn die Unterbrechungs- bzw. Interrupt-Verarbeitungen in den Interrupt-Steuerbereichen A, B, C, ... angefordert werden, wie dies in Fig. 4 der beigefügten Zeichnungen veranschaulicht ist, die Adresse des Korrekturbereichs des Hauptprogramms und die Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur der Adresse, aus den Registern 7 und 8 in dem Stapelbereich 32 gesichert. Sodann werden die Adresse des ersten Korrekturbereiches entsprechend der obigen Unterbrechung und die Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur der Adresse, aus dem festen Tabellenbereich 31 des RAM-Speichers 3 ausgelesen und in die Register 7 und 8 geschrieben. Somit werden die Korrekturbereiche der Unterbrechungs- bzw. Interrupt-Programme sequentiell korrigiert. Ferner werden am Ende des Interrupt-Programms die in dem Stapelbereich 32 gesicherten Daten wieder in die Register 7 und 8 geschrieben, wodurch der Korrekturprozess der Korrekturbereiche in dem Hauptprogramm kontinuierlich ausgeführt wird bzw. ist.
  • Wie oben beschrieben, wird in Übereinstimmung mit der oben erwähnten elektronischen Vorrichtung die in der Festspeichereinrichtung (ROM 2) gespeicherte Information durch die Information aus der Korrekturinformations-Speichereinrichtung (RAM 3) korrigiert, und der Informations-Programmfehler, der entdeckt wird, nachdem die elektronische Vorrichtung in Massenproduktion hergestellt worden ist, kann korrigiert werden. Durch Sichern der Unterscheidungs- bzw. Diskriminierungsdaten der Korrekturinformation in dem Stapelspeicher (Stapelbereich 32) kann der Programmfehler auch während der Unterbrechung bzw. während des Interrupts korrigiert werden.
  • Nebenbei sei angemerkt, dass in der obigen elektronischen Vorrichtung der Stapelbereich 32 als ein sogenannter Kellerspeicher aufgebaut bzw. angeordnet sein kann. Wenn dies der Fall ist, kann sodann die elektronische Vorrichtung der vorliegenden Erfindung bei einer Mehrfach-Unterbrechung angewandt werden, bei der eine Unterbrechung während einer Unterbrechung ausgeführt wird.
  • In der oben erwähnten Vorrichtung kann die Schalteinrichtung zum Schalten des Speicherzugriffs vom ROM-Speicher 2 zum RAM- Speicher 3 derart modifiziert werden, dass die Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms, durch einen Sprungbefehl für die betreffende Position ersetzt werden und dass die Abgabe von Daten des ROM- Speichers 2 und der Daten in dem Register 8 umgeschaltet wird, wenn die durch den Komparator 9 verglichenen Adressen miteinander koinzidieren.
  • Ferner werden in der oben erwähnten Vorrichtung Adressendaten des ersten Korrekturbereiches entsprechend dem Interrupt in dem festen Tabellenbereich 31 des RAM-Speichers 3 bei jeder Verarbeitung der verschiedenen Unterbrechungen bzw. Interrupts A, B, C, ... gespeichert. Falls kein Programmfehlerbereich in einer beliebigen Interrupt-Verarbeitung vorhanden ist, dann müssen die entsprechenden Daten in dem festen Tabellenbereich 31 in den festen Tabellenbereich 31 durch Auswahl einer Adresse geschrieben werden, auf die während der Interrupt-Verarbeitung nicht zugegriffen wird.
  • In der oben erwähnten Vorrichtung wird jedoch nach Löschen des RAM-Speichers 3 durch das Aktivierungsprogramm und dem Löschen sämtlicher Daten auf "0" die Information von der externen Speichervorrichtung 20 gespeichert. Wenn neue Daten dort nicht eingeschrieben werden, sind demgemäß sämtliche Adressen des festen Tabellenbereichs 31 des RAM-Speichers 3 alle "0". Andererseits sind die Adressen "0" den RAM-Bereichen in der CPU 1 zugeordnet, wobei ein Zugriff auf diese Adressen während der Programmausführung unterbunden werden kann. Falls eine beliebige Unterbrechungsverarbeitung keinen Programmfehlerbereich aufweist, dann kann daher das oben erwähnte Ziel dadurch erreicht werden, dass ein Einschreiben neuer Daten in den entsprechenden festliegenden Tabellenbereich 31 des RAM-Speichers 3 unterbunden wird.
  • Gemäß der vorliegenden Erfindung wird die in dem festen Speicherbereich gespeicherte Information durch die Information aus dem Korrekturinformations-Speicherbereich korrigiert, und der Informations-Programmfehler, der entdeckt wird, nachdem elektronische Vorrichtungen in Massenproduktion hergestellt worden sind, kann korrigiert werden. Durch Sichern der Unterscheidungs- bzw. Diskriminierungsdaten des Korrekturbereiches in dem Stapelspeiche r kann außerdem ein Programmfehler während der Unterbrechungs- bzw. Interrupt-Verarbeitung korrigiert werden.
  • Nachdem eine bevorzugte Ausführungsform der Erfindung unter Bezugnahme auf die beigefügten Zeichnungen beschrieben worden ist, dürfte einzusehen sein, dass die Erfindung auf die betreffende genaue Ausführungsform nicht beschränkt ist und dass vom Durchschnittsfachmann verschiedene Änderungen und Modifikationen vorgenommen werden können ohne Abweichung vom Umfang der Erfindung, wie sie in den beigefügten Zeichnungen festgelegt ist.

Claims (12)

1. Elektronische Vorrichtung, umfassend
a) eine Festspeichereinrichtung (2), in der eine Information in einer festen Weise gespeichert ist,
b) eine Adressensteuereinrichtung (1) zur Steuerung einer Adresse,
c) eine Eingabeeinrichtung (4), durch die eine externe Information eingegeben wird,
d) eine Korrekturinformations-Speichereinrichtung (3) zur Speicherung einer Korrekturinformation betreffend einen Bereich, der in der Information zu ändern ist, die in der Festspeichereinrichtung (2) gespeichert ist,
e) eine Schaltsteuereinrichtung (7, 8, 9) zum Schalten eines Speicherzugriffs durch die Adressensteuereinrichtung (1) von der Festspeichereinrichtung (2) zu der Korrekturinformations- Speichereinrichtung (3) unter der Steuerung von Steuerungsdaten,
dadurch gekennzeichnet,
f) dass die genannte Schaltsteuereinrichtung (7, 8, 9) eine Unterbrechung für die genannte Adressensteuereinrichtung (1) erzeugt, um die betreffende Adressensteuereinrichtung (1) zu veranlassen, eine Korrekturverarbeitungs-Unterbrechungsroutine (X) auszuführen, wobei die betreffende Korrekturverarbeitungs-Unterbrechungsroutine (X) eine Routine aus einer Vielzahl von Unterbrechungsverarbeitungsroutinen (A, B, C,..) ist, und
g) dass die Adressensteuereinrichtung (1) einen ersten Speicher aufweist, in welchem die Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs durch die Adressensteuereinrichtung (1) zwischengespeichert sind, wenn eine Unterbrechungsverarbeitung (A, B, C,..) ausgeführt wird, derart, dass die Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs während der Unterbrechungsverarbeitung (A, B, C,..) in der Schaltsteuereinrichtung (7, 8, 9) festgelegt werden können.
2. Vorrichtung nach Anspruch 1, wobei die Festspeichereinrichtung (2), die Adressensteuereinrichtung (1), die Eingabeeinrichtung (4), die Korrekturinformations-Speichereinrichtung (3) und die Schaltsteuereinrichtung (7, 8, 9) einheitlich in einem einzelnen Chip in der elektronischen Vorrichtung (10) integriert sind.
3. Vorrichtung nach Anspruch 1 oder 2, wobei die Schaltsteuereinrichtung (7, 8, 9) einen zweiten Speicher (7) zur Speicherung einer Adresse und von Daten eines zu korrigierenden Inhalts aufweist.
4. Vorrichtung nach Anspruch 3, wobei der zweite Speicher (7) ein Register ist.
5. Vorrichtung nach irgendeinem der Ansprüche 1 bis 4, wobei 0die Schaltsteuereinrichtung (7, 8, 9) eine Vergleichseinrichtung (9) aufweist für einen Vergleich einer vorliegenden Adresse mit einer Adresse des zu korrigierenden Inhalts.
6. Festinformations-Korrekturverfahren für eine elektronische Vorrichtung, die eine Festspeichereinrichtung (2) aufweist, in der eine Information in einer festen Weise gespeichert wird, mit einer Adressensteuereinrichtung (1) zur Steuerung einer Adresse, mit einer Eingabeeinrichtung (4), durch die eine externe Information eingegeben wird, mit einer Korrekturinformations-Speichereinrichtung (3) zur Speicherung einer Korrekturinformation betreffend einen Bereich, der in der genannten Information zu ändern ist, welche in der genannten Festspeichereinrichtung (2) gespeichert ist, und mit einer Schaltsteuereinrichtung (7, 8, 9) zum Schalten des Speicherzugriffs durch die genannte Adressensteuereinrichtung (1) von der genannten Festspeichereinrichtung zu der genannten Korrekturinformations-Speichereinrichtung (3) unter einer bestimmten Adresse,
umfassend folgende Verfahrensschritte:
Sichern der Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs durch die Adressensteuereinrichtung zu einem ersten Speicher während des Beginns einer Unterbrechungsverarbeitung für die genannte Adressensteuereinrichtung, und Festlegen der Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs während der Unterbrechungsverarbeitung in der genannten Schaltsteuereinrichtung,
dadurch gekennzeichnet,
dass die genannte Schaltsteuereinrichtung (7, 8, 9) eine Unterbrechung für die genannte Adressensteuereinrichtung (1) erzeugt, um die betreffende Adressensteuereinrichtung (1) zu veranlassen, eine Korrekturverarbeitungs-Unterbrechungsroutine (X) auszuführen, wobei die betreffende Korrekturverarbeitungs-Unterbrechungsroutine (X) eine Routine aus einer Vielzahl von Unterbrechungsverarbeitungsroutinen (A, B, C, ...) ist,
und dass die genannte Adressensteuereinrichtung (1) einen ersten Speicher aufweist, in welchem die Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs durch die Adressensteuereinrichtung (1) gesichert werden, wenn eine Unterbrechungsverarbeitung (A, B, C, ...) ausgeführt wird, derart, dass die Steuerdaten zur Steuerung des Schaltens des Speicherzugriffs während der Unterbrechungsverarbeitung (A, B, C, ...) in der Schaltsteuereinrichtung (7, 8, 9) festgelegt werden können.
7. Verfahren nach Anspruch 6, wobei die Verfahrensschritte in bezug auf ein einzelnes integriertes Schaltungschip in der elektronischen Vorrichtung (10) ausgeführt werden, in welchem die Festspeichereinrichtung (2), die CPU (1), die Eingabeeinrichtung (4), der RAM-Speicher (3) mit wahlfreiem Zugriff und die Schaltsteuereinrichtung (7, 8, 9) einheitlich integriert sind.
8. Verfahren nach Anspruch 6 oder 7, umfassend ferner den Schritt der Speicherung von Adressen und Daten eines zu korrigierenden Inhalts in einem zweiten Speicher (7) in der Schaltsteuereinrichtung (7, 8, 9).
9. Verfahren nach Anspruch 8, wobei der zweite Speicher (7) ein Register ist.
10. Verfahren nach irgendeinem der Ansprüche 6 bis 9, wobei die Schaltsteuereinrichtung eine Vergleichseinrichtung enthält für einen Vergleich einer vorliegenden Adresse mit einer Adresse des zu korrigierenden Inhalts.
11. Verfahren nach Anspruch 6, wobei die genannte Festspeichereinrichtung (2) Ein Lesespeicher (ROM) ist, wobei die genannte Korrekturinformations-Speichereinrichtung (3) ein Schreib-Lese-Speicher (RAM) ist und wobei die genannte Adressensteuereinrichtung (1) eine zentrale Verarbeitungseinheit (CPU) eines einzelnen integrierten Schaltungschip-Mikrocomputers (10) ist, umfassend ferner die Verfahrensschritte:
a) von einer externen Speicherquelle (20) her erfolgendes Schreiben eines Korrekturprogramms zur Korrektur der fehlerhaften Information in einen Korrekturprogrammbereich des RAM- Speichers (3) innerhalb des Mikrocomputers und Schreiben einer Adresse eines ersten Programmfehlerbereichs entsprechend einer Unterbrechung und von Vektordaten, die kennzeichnend sind für eine Startposition des Korrekturprogramms zur Korrektur des ersten Programmfehlerbereiches, in einen festen Tabellenbereich (31) des RAM-Speichers (3),
b) Auslesen der Adresse des ersten Programmfehlerbereiches in dem Hauptprogramm und von Vektordaten, die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur des ersten Programmfehlerbereiches, aus dem festen Tabellenbereich des RAM-Speichers und sodann Einschreiben der Adresse des ersten Programmfehlerbereichs und der Vektordaten in ein Korrekturadressenregister (7) bzw. in ein Korrektur- Vektorregister,
c) Beginnen der Verarbeitung des Hauptprogramms und Unterbrechen der Verarbeitung des Hauptprogramms durch die CPU (1), wenn eine durch das Hauptprogramm aufgerufene Adresse mit der Adresse in dem Korrekturadressenregister (7) koinzident ist,
d) nach dem Schritt c) Bezugnahme auf die Vektordaten des Korrektur-Vektorregisters zur weiteren Verarbeitung durch die CPU (1) und Ausführung eines Korrekturprogramms, welches an der Position liegt, die durch die Vektordaten in dem Korrektur-Vektorregister (8) angegeben ist,
e) am Ende des Korrekturprogramms erfolgendes Schreiben einer Adresse eines nächsten Korrekturbereiches eines Unterbrechungsprogramms in das Korrekturadressenregister (7) und Schreiben von Daten, die kennzeichnend sind für eine Startposition des nächsten Korrekturprogramms zur Korrektur einer Adresse, in das Korrektur-Vektorregister (8),
f) Unterbrechen der Verarbeitung des Hauptprogramms zur Verarbeiten eines Unterbrechungsprogramms und Sichern von Daten, die in das Korrekturadressenregister (7) und das Korrektur- Vektorregister (8) eingeschrieben sind, zu Beginn des Unterbrechungsprogramms in einem Stapelbereich (32) des RAM-Speichers (3), aus dem festliegenden Tabellenbereich (31) des RAM-Speichers (3) erfolgendes Auslesen einer ersten Korrekturbereichsadresse entsprechend der Unterbrechung und von Vektordaten, die kennzeichnend sind für eine Startposition eines Korrekturprogramms zur Korrektur einer Adresse des Korrekturbereiches, und sodann Einschreiben der ausgelesenen ersten Korrekturbereichsadresse entsprechend der Unterbrechung in das Korrekturadressenregister (7) und Einschreiben der ausgelesenen Vektordaten, die kennzeichnend sind für eine Startposition eines Korrekturprogramms zur Korrektur einer Adresse des Korrekturbereiches, in das Korrektur-Vektorregister (8),
g) während der Verarbeitung des Unterbrechungsprogramms, wenn eine durch die CPU (1) spezifizierte Adresse mit der in dem Korrekturadressenregister (7) gespeicherten Adresse übereinstimmt, Abgabe eines Signals an einen Unterbrechungssteuerbereich (X) der CPU (1) und Veranlassen der CPU, auf die Vektordaten in dem Vektor-Korrekturregister (8) für die Unterbrechungsverarbeitung Bezug zu nehmen, und sodann Ausführen des Korrekturprogramms an der Position, die durch die Vektordaten in dem Vektor-Korrekturregister (8) bezeichnet ist,
h) am Ende des Korrekturprogramms für das Unterbrechungsprogramm Einschreiben einer Adresse des nächsten Korrekturbereiches in dem Unterbrechungsprogramm in das Korrekturadressenregister (7) und Einschreiben von Vektordaten in das Vektor- Korrekturregister (8), die kennzeichnend sind für die Startposition des Korrekturprogramms zur Korrektur der Adresse, wobei die Korrekturbereiche der Unterbrechungsprogramme sequentiell korrigiert werden,
i) am Ende des Unterbrechungsprogramms erneutes Einschreiben der in dem Stapelbereich (32) gesicherten Daten in das Korrekturadressenregister und das Vektor-Korrekturregister (8), wobei ein Korrekturprozess der Korrekturbereiche in dem Hauptprogramm kontinuierlich ausgeführt wird.
12. Elektronische Vorrichtung nach Anspruch 1, wobei die genannte Festspeichereinrichtung (2) ein Lesespeicher (ROM) ist, wobei die genannte Korrekturinformations-Speichereinrichtung (3) ein Schreib-Lese-Speicher (RAM) ist und wobei die genannte Adressensteuereinrichtung (1) eine zentrale Verarbeitungseinheit (CPU) eines einzelnen integrierten Schaltungschip-Mikrocomputers (10) ist, umfassend ferner:
einen Datenbus (5),
einen Adressenbus (6),
ein mit dem Datenbus (5) verbundenes Korrekturbereichs-Adressenregister (7),
ein mit dem Datenbus (5) verbundenes Korrekturunterbrechungs- Vektorregister (8), einen mit dem Adressenbus (6) und dem Korrekturbereichs- Adressenregister (7) verbundener Komparator (9) zur Ermittlung einer Koinzidenz zwischen einer in dem Korrekturbereichs-Adressenregister (7) gespeicherten Adresse und einer Adresse auf dem Adressenbus (6) und zur Abgabe einer Unterbrechung an einen Unterbrechungssteuerbereich (X) der CPU (1), der außerdem andere bzw. weitere Unterbrechungen (A, B, C, ...) für eine weitere Verarbeitung zugeführt werden, und zur danach erfolgenden Veranlassung der CPU (1), Programmdaten zu verarbeiten, die durch Vektordaten spezifiziert sind, welche in dem Korrekturunterbrechungs-Vektorregister (8) gespeichert sind,
eine externe Speichereinrichtung (20), die mit dem Eingangsanschluß (X) für die Abgabe eines Hauptprogramm-Fehlerkorrekturprogramms und eines Unterbrechungsprogramm-Fehlerkorrekturprogramms verbunden ist,
wobei die CPU das Hauptprogramm-Fehlerkorrekturprogramm und das Unterbrechungsprogramm-Fehlerkorrekturprogramm in dem RAM-Speicher (3) speichert und in einem festliegenden Tabellenbereich (31) des RAM-Speichers (3) eine erste Korrekturbereichsadresse entsprechend einer Unterbrechung und Vektordaten speichert, die kennzeichnend sind für eine Startposition eines Korrekturprogramms zur Korrektur einer Adresse des Korrekturbereichs,
wobei die CPU (1) aus dem festliegenden Tabellenbereich (31) des RAM-Speichers (3) die erste Korrekturbereichsadresse entsprechend einer Unterbrechung und die Vektordaten liest, die kennzeichnend sind für die Startposition eines Korrekturprogramms zur Korrektur der Adresse des Korrekturbereichs, und in das Korrekturbereichs-Adressenregister (7) die erste Korrekturbereichsadresse einschreibt, die der Unterbrechung entspricht, und in das Korrekturunterbrechungs-Vektorregister (8) die Vektordaten einschreibt, die kennzeichnend sind für die Startposition eines Korrekturprogramms zur Korrektur der Adresse des Korrekturbereichs,
wobei die CPU (1) in einem Stapelbereich des RAM-Speichers Daten sichert, die in das Korrekturbereichs-Adressenregister (7) und in das Korrekturunterbrechungsregister (8) geschrieben sind, derart, dass die Korrektur von Programmfehlern sogar während einer Unterbrechung ausgeführt werden kann.
DE69331292T 1992-01-24 1993-01-22 Elektronisches Gerät und Verfahren zur festen Informationsmodifikation Expired - Fee Related DE69331292T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01120692A JP3230262B2 (ja) 1992-01-24 1992-01-24 電子装置及びその固定情報修正方法

Publications (2)

Publication Number Publication Date
DE69331292D1 DE69331292D1 (de) 2002-01-24
DE69331292T2 true DE69331292T2 (de) 2002-06-13

Family

ID=11771541

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69331292T Expired - Fee Related DE69331292T2 (de) 1992-01-24 1993-01-22 Elektronisches Gerät und Verfahren zur festen Informationsmodifikation

Country Status (6)

Country Link
US (1) US6128751A (de)
EP (1) EP0553733B1 (de)
JP (1) JP3230262B2 (de)
KR (1) KR100307857B1 (de)
CA (1) CA2087696A1 (de)
DE (1) DE69331292T2 (de)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH089435A (ja) * 1994-06-15 1996-01-12 Nec Corp 選択呼出受信機
GB2292470A (en) * 1994-08-19 1996-02-21 Advanced Risc Mach Ltd Rom patching
GB2309324B (en) * 1996-01-17 2000-09-06 Motorola Inc Method for storing repair data in a micro processor system
JP2867965B2 (ja) * 1996-06-28 1999-03-10 日本電気株式会社 データ処理装置及びデータ処理方法
US6009540A (en) * 1997-04-08 1999-12-28 Aitm Associates Incorporated Logic module for implementing system changes on PC architecture computers
FR2764407B1 (fr) * 1997-06-05 1999-07-30 Alsthom Cge Alcatel Dispositif de retouche de programme de commande dans un processeur
JP2001184203A (ja) * 1999-12-24 2001-07-06 Matsushita Electric Ind Co Ltd プログラム修正装置
JP2001256044A (ja) * 2000-03-14 2001-09-21 Sony Corp データ処理装置
GB2373888A (en) * 2001-03-30 2002-10-02 Toshiba Res Europ Ltd Dynamic vector address allocation for a code patching scheme
US20040015939A1 (en) * 2001-05-16 2004-01-22 Cheah Jonathon Y. Updateable memory module
US6925521B2 (en) * 2001-09-10 2005-08-02 Texas Instruments Incorporated Scheme for implementing breakpoints for on-chip ROM code patching
WO2004046924A1 (en) 2002-11-18 2004-06-03 Arm Limited Processor switching between secure and non-secure modes
WO2004046925A1 (en) 2002-11-18 2004-06-03 Arm Limited Security mode switching via an exception vector
JP2004213102A (ja) * 2002-12-26 2004-07-29 Fujitsu Ltd マイクロコンピュータ
US7269707B2 (en) * 2003-01-10 2007-09-11 Texas Instruments Incorporated Multiple patches to on-chip ROM in a processor with a multilevel memory system without affecting performance
US7596721B1 (en) * 2004-01-09 2009-09-29 Maxtor Corporation Methods and structure for patching embedded firmware
US7464248B2 (en) 2005-04-25 2008-12-09 Mediatek Incorporation Microprocessor systems and bus address translation methods
US7533240B1 (en) * 2005-06-01 2009-05-12 Marvell International Ltd. Device with mapping between non-programmable and programmable memory
US7526578B2 (en) * 2006-02-17 2009-04-28 International Business Machines Corporation Option ROM characterization
US20080263533A1 (en) * 2007-04-19 2008-10-23 Proton World International N.V. Implementation of patches by a processing unit
CN101334760B (zh) * 2007-06-26 2010-04-07 展讯通信(上海)有限公司 监控总线非法操作的方法、装置及包含该装置的系统
US8156486B2 (en) * 2008-10-29 2012-04-10 Mediatek Inc. Patching devices and methods thereof for patching firmware functions
CN103268237A (zh) * 2013-05-10 2013-08-28 东信和平科技股份有限公司 一种掩膜智能卡的补丁功能扩展方法及装置
US9547489B2 (en) * 2014-03-31 2017-01-17 Qualcomm Incorporated System and method for modifying a sequence of instructions in a read-only memory of a computing device

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4150428A (en) * 1974-11-18 1979-04-17 Northern Electric Company Limited Method for providing a substitute memory in a data processing system
JPS5721799B2 (de) * 1975-02-01 1982-05-10
JPS5245232A (en) * 1975-10-08 1977-04-09 Hitachi Ltd Micro program modification circuit
US4028683A (en) * 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit with counter
US4028684A (en) * 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit with repatching capability
US4028678A (en) * 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit
US4218757A (en) * 1978-06-29 1980-08-19 Burroughs Corporation Device for automatic modification of ROM contents by a system selected variable
US4291375A (en) * 1979-03-30 1981-09-22 Westinghouse Electric Corp. Portable programmer-reader unit for programmable time registering electric energy meters
US4296470A (en) * 1979-06-21 1981-10-20 International Business Machines Corp. Link register storage and restore system for use in an instruction pre-fetch micro-processor interrupt system
JPS56136054A (en) * 1980-03-26 1981-10-23 Hitachi Ltd Function assigning circuit
US4319343A (en) * 1980-07-16 1982-03-09 Honeywell Inc. Programmable digital memory circuit
US4456966A (en) * 1981-02-26 1984-06-26 International Business Machines Corporation Memory system with flexible replacement units
JPS57150019A (en) * 1981-03-13 1982-09-16 Hitachi Ltd Control system of terminal device
JPS57196357A (en) * 1981-05-29 1982-12-02 Toshiba Corp Data processor
JPS57211651A (en) * 1981-06-23 1982-12-25 Toshiba Corp Patch system
US4490783A (en) * 1981-07-02 1984-12-25 Texas Instruments Incorporated Microcomputer with self-test of microcode
US4400798A (en) * 1981-07-13 1983-08-23 Tektronix, Inc. Memory patching system
JPS5816350A (ja) * 1981-07-22 1983-01-31 Toshiba Corp メモリ拡張代替方式
JPS5886648A (ja) * 1981-11-18 1983-05-24 Mitsubishi Electric Corp トレ−ス装置
US4542453A (en) * 1982-02-19 1985-09-17 Texas Instruments Incorporated Program patching in microcomputer
US4490812A (en) * 1982-09-30 1984-12-25 Mostek Corporation User reprogrammable programmed logic array
US4819154A (en) * 1982-12-09 1989-04-04 Sequoia Systems, Inc. Memory back up system with one cache memory and two physically separated main memories
US4607332A (en) * 1983-01-14 1986-08-19 At&T Bell Laboratories Dynamic alteration of firmware programs in Read-Only Memory based systems
US4769767A (en) * 1984-01-03 1988-09-06 Ncr Corporation Memory patching system
US4610000A (en) * 1984-10-23 1986-09-02 Thomson Components-Mostek Corporation ROM/RAM/ROM patch memory circuit
FR2573227B1 (fr) * 1984-11-09 1987-01-30 Palais Decouverte Dispositif de simulation et de securite pour clavier de saisie de donnees
US4745572A (en) * 1985-11-04 1988-05-17 Step Engineering Software editing instrument
US4709324A (en) * 1985-11-27 1987-11-24 Motorola, Inc. Data processor control unit having an interrupt service using instruction prefetch redirection
JPS62249231A (ja) * 1986-04-23 1987-10-30 Pfu Ltd マイクロプログラム制御処理方式
ATE83106T1 (de) * 1986-06-09 1992-12-15 Securicrypto Ab Einrichtung zur verschluesselung und zur entschluesselung.
US4751703A (en) * 1986-09-16 1988-06-14 International Business Machines Corp. Method for storing the control code of a processor allowing effective code modification and addressing circuit therefor
US4831517A (en) * 1986-10-10 1989-05-16 International Business Machines Corporation Branch and return on address instruction and methods and apparatus for implementing same in a digital data processing system
US4802119A (en) * 1987-03-17 1989-01-31 Motorola, Inc. Single chip microcomputer with patching and configuration controlled by on-board non-volatile memory
US4942541A (en) * 1988-01-22 1990-07-17 Oms, Inc. Patchification system
JPS6465633A (en) * 1987-09-07 1989-03-10 Hitachi Ltd Microprogram controller
JP3023425B2 (ja) * 1987-10-09 2000-03-21 株式会社日立製作所 データ処理装置
JPH0199129A (ja) * 1987-10-12 1989-04-18 Fujitsu Ltd マイクロプログラム修正方式
JPH01114941A (ja) * 1987-10-28 1989-05-08 Fujitsu Ltd プログラム修正方式
JPH01232447A (ja) * 1988-03-11 1989-09-18 Mitsubishi Electric Corp シングル・チップ・マイクロコンピュータ
JPH01286029A (ja) * 1988-05-13 1989-11-17 Nec Corp マイクロプログラムのパッチ方式
US4905200A (en) * 1988-08-29 1990-02-27 Ford Motor Company Apparatus and method for correcting microcomputer software errors
US5063499A (en) * 1989-01-09 1991-11-05 Connectix, Inc. Method for a correlating virtual memory systems by redirecting access for used stock instead of supervisor stock during normal supervisor mode processing
EP0393290B1 (de) * 1989-04-19 1995-08-16 International Business Machines Corporation Anordnung zur Speicher- und Peripherie-Bausteinauswahl
JPH03142629A (ja) * 1989-10-30 1991-06-18 Toshiba Corp マイクロコントローラ
GB9011679D0 (en) * 1990-05-24 1990-07-11 Schlumberger Ind Ltd Mask-programmable microprocessors
US5199032A (en) * 1990-09-04 1993-03-30 Motorola, Inc. Microcontroller having an EPROM with a low voltage program inhibit circuit
US5408672A (en) * 1991-11-18 1995-04-18 Matsushita Electric Industrial Co. Microcomputer having ROM to store a program and RAM to store changes to the program
US5623665A (en) * 1992-01-13 1997-04-22 Sony Corporation Electronic apparatus for patching a read-only memory
JPH06318261A (ja) * 1992-09-18 1994-11-15 Sony Corp 電子装置
JP3284614B2 (ja) * 1992-09-19 2002-05-20 ソニー株式会社 電子装置
JP3810805B2 (ja) * 1992-09-19 2006-08-16 ソニー株式会社 情報修正システム

Also Published As

Publication number Publication date
EP0553733A2 (de) 1993-08-04
US6128751A (en) 2000-10-03
EP0553733A3 (en) 1997-10-15
KR100307857B1 (ko) 2001-11-30
CA2087696A1 (en) 1993-07-25
KR930016880A (ko) 1993-08-30
JPH05204630A (ja) 1993-08-13
JP3230262B2 (ja) 2001-11-19
EP0553733B1 (de) 2001-12-12
DE69331292D1 (de) 2002-01-24

Similar Documents

Publication Publication Date Title
DE69331292T2 (de) Elektronisches Gerät und Verfahren zur festen Informationsmodifikation
DE69023018T2 (de) Prozessor-Unterbrechungssteuerung.
DE4331703C2 (de) Elektronische Einrichtung
DE3732808A1 (de) Verfahren und vorrichtung zum erzeugen und bearbeiten von unterbrechungspunkten in einem monitorprogramm
DE1499200B2 (de) Datenverarbeitungsanlage mit vorranggesteuerter programm unterbrechung
DE68924719T2 (de) Vorrichtung und Verfahren zur Ausführung eines Unterprogramms in einem Datenverarbeitungssystem mit Blockumschaltung.
DE69228272T2 (de) Mikrokontroller mit Korrektur von fehlerhafter Information
DE2611907A1 (de) Dv-system mit einer prioritaets- unterbrechungs-anordnung
DE69130414T2 (de) Prozessor und Verfahren zur parallelen Verarbeitung
DE3043653A1 (de) Datenverarbeitungsanlage
EP0764906A2 (de) Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems
DE4134392C2 (de) Verfahren und Vorrichtung zum Ungültigmachen von Befehlen in Geräten mit Parallelverarbeitung
DE2927481C2 (de) Datenverarbeitungsvorrichtung
DE69714532T2 (de) Synchrone Halbleiterspeichervorrichtung mit Makrobefehlsspeichern und Ausführungsverfahren dafür
DE3751287T2 (de) Während einer Instruktionsausführung eine Unterbrechungsanforderung empfangender Mikroprogrammkontrolleur.
DE19652290C2 (de) Mikrocomputer
DE10330607A1 (de) Einzelchip-Mikrocomputer und Verfahren zu dessen Boot-Region-Schaltern
DE19543411C2 (de) Analog-Digital-Wandlervorrichtung
WO2001038968A2 (de) Prozessorsystem
DE3210616A1 (de) Rechner
EP0347970B1 (de) Verfahren zum Prüfen eines Festwertspeichers und Anordnung zur Durchführung des Verfahrens
DE3789197T2 (de) Verfahren zum initialisieren von parametern in einer regeleinrichtung einer programmierbaren maschine.
DE2759120C2 (de)
DE3241402A1 (de) Verfahren zum steuern des datentransfers zwischen einem datensender und einem datenempfaenger ueber einen bus mit hilfe einer am bus angeschlossenen steuereinrichtung
WO2002039457A2 (de) Speicherverwaltungslogik zur erweiterten nutzung von festwertspeichern

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee