DE69725808T2 - Mikrorechner mit Selbstprüfungseinheit - Google Patents

Mikrorechner mit Selbstprüfungseinheit Download PDF

Info

Publication number
DE69725808T2
DE69725808T2 DE69725808T DE69725808T DE69725808T2 DE 69725808 T2 DE69725808 T2 DE 69725808T2 DE 69725808 T DE69725808 T DE 69725808T DE 69725808 T DE69725808 T DE 69725808T DE 69725808 T2 DE69725808 T2 DE 69725808T2
Authority
DE
Germany
Prior art keywords
register
cpu
diagnosis
microcomputer
value
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
DE69725808T
Other languages
English (en)
Other versions
DE69725808D1 (de
Inventor
Nobushi Minato-ku Takahashi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Electronics Corp
Original Assignee
NEC Electronics 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Publication of DE69725808D1 publication Critical patent/DE69725808D1/de
Application granted granted Critical
Publication of DE69725808T2 publication Critical patent/DE69725808T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft einen Mikrocomputer mit einer Selbstdiagnoseeinheit und spezieller einen Mikrocomputer mit einer Selbstdiagnosefunktion zum Diagnostizieren der CPU des Mikrocomputers durch den CPU-Monitor-Macro-Dienst, der ein Programm zum Ausführen einer Folge von Instruktionen ist, die zum Diagnostizieren der CPU mittels eines externen Interrupt-Signals notwendig sind.
  • Um die Leistungsfähigkeit des Motorfahrzeuges zu steigern und dessen Sicherheit zu erhöhen, wurde unlängst allgemein ein mit einem Mikrocomputer ausgestatteter elektronischer Controller im Hauptcontroller des Motorfahrzeuges, wie dem Motorcontroller oder dem Bremscontroller, verwendet. Wenn in der Benutzerkarte, die den Motorcontroller oder den Bremscontroller umfaßt, oder in dem Mikrocomputer ein Fehler auftritt, kann dieser das menschliche Leben gefährden. Deshalb verlangt der für den Gebrauch in einem solchen technischen Feld bestimmte Mikrocomputer eine hohe Verläßlichkeit. Um zu überprüfen, ob ein Fehler in dem Mikrocomputer vor der Auslieferung der Benutzerkarte auftritt oder nicht, wendet der Ingenieur des Controllers für das Motorfahrzeug die Selbstdiagnosesoftware von außen auf den Mikrocomputer an, nachdem diese in die Benutzerkarte installiert wurde. Die Selbstdiagnosesoftware diagnostiziert also die CPU in dem Mikrocomputer, um basierend auf dem Diagnoseergebnis zu bestätigen, ob ein Fehler auftritt oder nicht.
  • Wie oben für die konventionellen in dem Motorfahrzeug verwendeten Mikrocomputer beschrieben, wird die Selbstdiagnosesoftware, die die CPU diagnostiziert, nach ihrer Installation in der Benutzerkarte auf den Mikrocomputer angewandt, um vor der Auslieferung der Benutzerkarte den Status des Mikrocomputers zu bestätigen. In diesem Fall wird die Selbstdiagnose der CPU den Instruktionen der von außen eingelesenen CPU-Selbstdiagnosesoftware folgend implementiert. Daher ist die Zeit zum Einlesen der Instruktionen der CPU-Selbstprüfungssoftware notwendig.
  • Auf der anderen Seite wurde ein Macro-Dienst, der eine Folge von Instruktionen durch einen Interrupt ausführt, in der japanischen Patentoffenlegungsschrift Nr. 60-183639 "data processing apparatus" veröffentlicht. In dem konventionellen Macrodienst umfaßt die zentrale Verarbeitungseinheit (CPU) ein Datenverarbeitungssteuermittel, das die arithmetische Operation und das Weiterleiten der in dem Speicher gespeicherten Daten mit dem gesamten unveränderten Status durchführt, wobei der erste Prozeß, der für die Ausführung des Programms im Programmspeicher relevant ist, verzögert wird. In Reaktion auf die Verarbeitungsanforderung des Zählers führt das Datenverarbeitungsmittel die arithmetische Operation und das Weiterleiten aus. Folglich reduziert die konventionelle Datenverarbeitungsvorrichtung die Zeit für die Interruptverarbeitung und kehrt daher schnell zu dem ersten Prozeß zurück.
  • Der Zweck des obigen konventionellen Macro-Dienstes ist jedoch nur, die Zeit zu verringern, die notwendig ist, um das externe Programm als eine Interruptverarbeitung auszuführen, aber nicht, um die Zeit zum Diagnostizieren der CPU zu verringern. Bezüglich der CPU-Diagnostik lehrt die obige Veröffentlichung weder irgendeine Funktion noch irgendeine Struktur.
  • Die EP-A-0 018 736 offenbart einen selbsttestenden Mikrocomputer. Der Mikrocomputer hat ein ROM, der Platz für ein Benutzersteuerprogramm enthält und auch Speicher für ein residentes Selbsttestprogramm alloziert, das durch Erzeugen von Interrupts eingegeben wird, die zu anderen als den normalen Benutzerorten zeigen, wenn ein Selbsttestmode eingegeben wird. Dann wird das Selbsttestprogramm eher als das Benutzerprogramm ausgeführt. Um eine Instruktion zu verarbeiten, wird der Befehlscode (opcode) vorübergehend in einem Instruktionsregister gespeichert und durch eine Decodier- und Steuerlogik decodiert. Die Decodier- und Steuerlogik generiert Signale, die die Register und die ALU der CPU steuern.
  • Eine Aufgabe der vorliegenden Erfindung ist, einen Mikrocomputer mit einer Selbstdiagnoseeinheit zur Verfügung zu stellen, die in der Lage ist, die CPU in einem kürzeren Zeitraum zu diagnostizieren, indem die Zeit zum Lesen der Instruktionen der Software reduziert wird.
  • Diese Aufgabe wird gelöst durch einen Mikrocomputer gemäß Anspruch 1. Ein bevorzugtes Ausführungsbeispiel ist in Anspruch 2 definiert.
  • Das bevorzugte Ausführungsbeispiel umfaßt: ein erstes Register, das einen Anfangswert zur Ausführung der Diagnose der CPU speichert, wobei der Anfangswert vor der Initiierung des CPU-Monitor-Macro-Dienstes unter Verwendung eines Benutzerprogramms in einem externen Speicher in den RAM geschrieben wird, und zwar gemäß den Instruktionscodes des CPU-Monitor-Macro-Dienstes in dem Micro-ROM; ein zweites Register, das eine Adresse speichert, die ein Ausgabeziel für einen Ausführungsergebniswert bestimmt, nachdem die Diagnose der CPU unter Verwendung des Anfangswertes, der wie oben mittels eines Benutzerprogramms in dem externen Speicher in den RAM geschrieben wird, ausgeführt wird; ein drittes Register, das Adressen des RAM und Wege dorthin prüft, wobei der Anfangswert verwendet wird, um Daten bei der Interruptverarbeitung zu sichern; eine Benennungseinheit, die das dritte Register benennt; ein viertes Register, das ein Ergebnis der arithmetischen Operation mittels einer Operationseinheit speichert, die arithmetische Operationen des Ausführungsergebniswertes des Prüfens implementiert; und eine Ausgabeeinheit, die das Ergebnis des vierten Registers nach dem Prüfen speichert und den in dem ersten Register gespeicherten Ausführungsergebniswert zum Äußeren des Mikrocomputers über einen von dem zweiten Register benannten Port ausgibt, wobei der Status der CPU des Mikrocomputers mit Bezug zu dem Ausführungsergebniswert im Äußeren des Mikrocomputers diagnostiziert wird.
  • 1 ist ein Blockschaltbild, das die Struktur des Ausführungsbeispiels des Mikrocomputers mit Selbstdiagnoseeinheit gemäß der vorliegenden Erfindung zeigt; und
  • 2 ist ein Blockschaltbild, das die detaillierte Struktur des Ausführungsbeispiels des Mikrocomputers mit Selbstdiagnoseeinheit gemäß der vorliegenden Erfindung zeigt.
  • Im folgenden wird jetzt ein bevorzugtes Ausführungsbeispiel des Mikrocomputers mit Selbstdiagnoseeinheit mit Bezug zu den beigefügten Zeichnungen beschrieben.
  • 1 ist ein Blockschaltbild, das die Struktur des Ausführungsbeispiels des Mikrocomputers mit Selbstdiagnoseeinheit gemäß der vorliegenden Erfindung zeigt und 2 ist ein Blockschaltbild, das die detaillierte Struktur des Ausführungsbeispiels zeigt.
  • Zuerst wird die Struktur des Ausführungsbeispiels mit Bezug zu 1 beschrieben.
  • Wie in 1 gezeigt, umfaßt der Mikrocomputer 10 eine CPU 1, ein RAM 2, der beliebig beschreibbar und lesbar ist, eine Interruptverarbeitungseinheit 3, einen Datenbus 4, einen Eingabe-/Ausgabe-Port 5 und eine Selbstdiagnoseeinheit 9. Die Selbstdiagnoseeinheit 9 umfaßt einen CPU-Monitor-Macro-Dienst 6, ein CPU-Diagnosemodul 7 und ein Ausgabemodul 8. Der CPU-Monitor-Macro-Dienst 6 ist ein Programm, das eine Folge von Anweisungen ausführt und die CPU 1 in Reaktion auf das externe Interruptsignal diagnostiziert. Das CPU-Diagnosemodul 7 diagnostiziert die CPU 1, indem es sich auf die Daten in einem externen Speicher 11 in Übereinstimmung mit dem CPU-Monitor-Macro-Dienst bezieht. Das Ausgabemodul 8 gibt das Diagnoseergebnis der CPU 1 unter Verwendung der Referenzdaten nach außen aus.
  • Als nächstes wird die detaillierte Struktur des Ausführungsbeispiels des Mikrocomputers mit Selbstdiagnoseeinheit mit Bezug zu 2 erläutert.
  • In Reaktion auf ein Interruptsignal 100, das die Dia gnose der CPU anfordert, aktiviert ein Micro-ROM-Steuerkreis 101 den CPU-Monitor-Macro-Dienst, der eine Folge von Instruktionen ausführt, die notwendig zum Diagnostizieren der CPU sind. Dann benennt der Micro-ROM-Steuerkreis 101, der Adressen von Instruktionscode-Speicherbereichen produziert, die Instruktionen und Interruptsignalen entsprechen, einen CPU-Monitor-Macro-Dienst-Code 102 in einem Micro-ROM 115, der der Instruktionscode-Speicherbereich ist. Gemäß dem CPU-Monitor-Macro-Dienst-Code 102 werden ein Anfangswert a, der zum Diagnostizieren der CPU verwendet wird, und eine Adresse in einem TA-Register 114 bzw. einem TC-Register 112 gespeichert. Der Anfangswert α wird von dem Benutzerprogramm in dem externen Speicher 11 über die Leitung eines externen Signals 127 vor der Aktivierung des CPU-Monitor-Macro-Dienstes in einen RAM 110 geschrieben. Die Adresse bestimmt die Ausgabebenennung für den Ausführungsergebniswert des Diagnostizierens der CPU mittels des Anfangswertes α. Der Anfangswert α in dem TA-Register 114 verwendet, um sequentiell Adressen des RAMs 110 und Funktionen eines TB-Registers 113 zu prüfen, das die Daten in der Interruptverarbeitung sichert. Nach der Prüfung führt eine ALU 111, die eine Arithmetikoperationseinheit ist, die Operation auf dem Ausführungsergebniswert durch, um den bearbeiteten Ausführungsergebniswert zu einem ALU-Register 126 weiterzuleiten, wobei er in dem TA-Register 114 gespeichert wird. Danach wird der Ausführungsergebniswert in dem TA-Register 114 als ein internes Signal 120 des Mikrocomputers 125 über einen Port 118, der über die obige Adresse in dem TC-Register 112 benannt wird, ausgegeben, wobei der Benutzer mit Bezug zu dem Ausführungsergebniswert bestätigt, ob ein Fehler auftritt oder nicht.
  • Ein Mikrobefehl 116 benennt einen Block, an dem Daten zu dem Datenbus 103 ausgegeben werden sollen. Ein PSWL 119 sind die 8 niederwertigen Bits eines Programmstatuswortes. Ein Spezialbefehl 117 führt ein Setzen und Zurücksetzen eines Flags des PSWL 119 durch. Ein SPH 108 ist ein Speicherzeiger mit acht höherwertigen Bits, der aus vier höherwertigen Bits des obigen Registers zur Sicherung zusammengesetzt ist. Ein SP 109 ist ein Speicherzeiger mit 16 niederwertigen Bits, welcher der Speicherzeiger ist, der 16 niederwertige Bits des Registers, das die Daten in der Interruptverarbeitung speichert, einschließt.
  • Als nächstes wird der Betrieb des obigen Ausführungsbeispiels beschrieben.
  • Das Interruptsignal 100 aktiviert den CPU-Monitor-Macro-Dienst zum Ausführen einer Folge von Instruktionen in Reaktion auf das Interruptsignal. Der CPU-Monitor-Macro-Dienst schreibt in das TA-Register 114 bzw. in das TC-Register 112 den Anfangswert α zur Verwendung beim Diagnostizieren der CPU und die Ausgabezieladresse β des Ausführungsergebniswerts des Diagnostizierens der CPU (im folgenden mit SFR-Ausgabezieladresse abgekürzt), wobei beide über die Leitung des externen Signals 127 unter Verwendung des Benutzerprogramms in dem externen Speicher 11 vor der Initiierung des CPU-Monitor-Macro-Dienstes in den RAM 110 geschrieben wurden.
  • Zuerst wird die Adresse bestätigt, die von dem RAMAD 105 (RAM-Adressenzwischenspeicher) benannt wird, der Adressen in dem RAM 110 bereitstellt. Der Wert Va in einem Register des RAM 110, der dort vor dem Start des CPU-Monitor-Macro-Dienstes abgelegt wurde, wird in das TB-Register 113 gespeichert. Der Anfangswert α wird von dem TA-Register 114 zum Register des RAM 110 weitergeleitet, das von dem RAMAD 105 benannt wird. Danach benennt der RAMAD 105 das Register des RAMs 110, das den Anfangswert α speichert. Das Register des RAMs 110 transferiert den Anfangswert α zur ALU 111, und der CPU-Monitor-Macro-Dienst-Code 102 aktiviert gleichzeitig die ALU 111 durch die ALUDEC 107, die deren Operationen spezifiziert. Die ALU 111 führt die von der ALUDEC 107 spezifizierte Dekrementierung durch, so daß sie den Ausführungsergbniswert (α – 1) zum TA-Register 114 schiebt. Dann kehrt der in dem TB-Register 113 gesicherte Wert Va zum Register des RAM 110 zurück. Auf diese Weise ist die Prüfung des RAM 110 vollendet.
  • Als nächstes wird der SP 109 (Speicherzeiger mit 16 niederwertigen Bits) geprüft, der der Speicherzeiger ist, der 16 niederwertige Bits des Registers, das die Daten in der Interruptverarbeitung sichert, einschließt. Der Wert Vb in dem SP 109 wird in dem TB-Register 113 gesichert. Auch der Ausführungsergebniswert (α – 1) in dem TA-Register 114 wird zu dem SP 109 weitergeleitet und wird von dort weiter zur ALU 111 weitergeleitet. Gleichzeitig spezifiziert der CPU-Monitor-Macro-Dienst-Code 102 die Operation der ALU 111 durch die ALUDEC 107. Dabei führt die ALU 111 die von der ALUDEC 107 spezifizierte Dekrementierung aus und transferiert so den Ausführungsergebniswert (α – 2) zum TA-Register 114. Der im TB-Register 113 gesicherte Wert Vb kehrt zum SP 109 zurück. Auf diese Weise ist das Prüfen der SP 109 vollendet.
  • Weiter werden die Inkrementierungs- und Dekrementierungsoperationen in der SPH 108 (Speicherzeiger mit 8 höherwertigen Bits), der aus vier höherwertigen Bits des obigen Registers zur Sicherung zusammengesetzt ist, geprüft. Zuerst wird der Wert Vc in der SPH 108 in das TB-Register 113 gesichert, und der Wert (α – 2) in dem TA-Register 114 wird zum SPH 108 weitergeleitet. Dann transferiert der CPU-Monitor-Macro-Dienst-Code 102 die Daten "FFFF(H)" über das TA-Register 114 zur ALU 111 und spezifiziert auch die Operation der ALU 111 durch die ALUDEC 107. So implementiert die ALU 111 die durch die ALUDEC 107 spezifizierte Inkrementierung. Die Inkrementierung ermöglicht dem Trägerflag in dem ALU-Register 126, "1" zu sein, was dem Wert (α – 2) in der SPH 108 erlaubt, dekrementiert zu werden, um auf (α – 3) vermindert zu werden. Der Wert (α – 3) in der SPH 108 wird zum TA-Register 114 geschoben. Der in dem TB- Register 113 gesicherte Wert Vc kehrt zu der SPH 108 zurück. Auf diese Weise ist das Prüfen der SPH 108 vollendet.
  • Des weiteren wird der Weg von einem TQ 104 (Befehlscoderegister), der ein Instruktionscoderegister ist, der Instruktionscodes holt, zur Adresse in dem durch den RAMAD 105 benannten RAM 110 geprüft. Durch Zugreifen auf den TQ 104 transferiert der CPU-Monitor-Macro-Dienst-Code 102 die Daten Vd an der Adresse "0080(H)" in dem RAM 110, der durch das TRA 106 (temporäres RAM-Adressenregister) benannt wird, das das Register ist, das die für den RAM 110 relevanten Adressen sichert, zum TB-Register 113. Der Wert (α – 3) im TA-Register 114 wird zur Adresse AA in dem von dem TRA 106 benannten RAM 110 weitergeleitet und wird von dort weiter zur ALU 111 weitergeleitet. Auch der CPU-Monitor-Macro-Dienst-Code 102 spezifiziert die Operation der ALU 111 durch die ALUDEC 107, wobei die ALU 111 die von der ALUDEC 107 spezifizierte Dekrementierung ausführt, um den Ausführungsergebniswert (α – 4) zum TA-Register 114 zu verschieben. Dann kehrt der in dem TB-Register 113 gespeicherte Wert Vd zur Adresse "0080(H)" in dem von dem TRA 106 benannten RAM 110 zurück. Auf diese Weise wird das Prüfen des den RAM 110 betreffenden Wegs vollendet.
  • Des weiteren transferiert der CPU-Monitor-Macro-Dienst-Code 102 die Adresse "0000(H)" zum TQ 104, um die TQLL 121 zu prüfen, die aus den vier niedrigstwertigen Bits des TQ 104 zusammengesetzt sind. Die Daten Ve an der Adresse AB in dem von der TQLL 121 benannten RAM 110 werden über die ALU 111 in dem TB-Register 113 gesichert. Der Wert (α – 4) in dem TA-Register 114 wird zur Adresse AB in dem von dem RAMAD 105 benannten RAM 110 weitergeleitet und wird weiter zur ALU 111 weitergeleitet. Danach spezifiziert der CPU-Monitor-Macro-Dienst-Code 102 die Operation der ALU 111 durch die ALUDEC 107, wobei die ALU 111 die von der ALUDEC 107 spezifizierte Dekrementierung ausführt, um den Ausführungsergebniswert (α – 5) zum TA-Register 114 weiterzuleiten. Dann kehren die in das TB-Register 113 gesicherten Daten Ve zur Adresse AB in dem von der TQLL 121 benannten RAM 110 zurück. Auf diese Weise ist das Prüfen der TQLL 121 vollendet.
  • Anschließend wird der Weg zur Adresse in dem RAM 110 geprüft, der von dem TQHH 124, der die höchstwertigen vier Bits des TQ 104 darstellt, benannt ist. Die Daten Vf an der Adresse AC in dem von dem TQHH 124 benannten RAM 110 werden in das TB-Register 113 gesichert. Der Wert (α – 5) in dem TA-Register 114 wird zur Adresse AC in dem von dem TQHH 124 benannten RAM 110 weitergeleitet und wird weiter zur ALU 111 weitergeleitet. Der CPU-Monitor-Macro-Dienst-Code 102 spezifiziert die Operation der ALU 111 durch die ALUDEC 107, wobei die ALU 111 die von der ALUDEC 107 spezifizierte Dekrementierung implementiert, um den Ausführungsergebniswert (α – 6) zum TA-Register 114 zu transferieren. Die in dem TB-Register 113 gesicherten Daten Vf kehren zur Adresse AC in dem von dem TQHH 124 benannten RAM 110 zurück.
  • Nach der Prüfung der peripheren Funktionen wird die SFR-Ausgabezieladresse β in dem TC-Register 112 zum TB-Register 113 weitergeleitet, während der Wert (α – 6) in dem TA-Register 114 zum TC-Register 112 weitergeleitet wird. Der CPU-Monitor-Macro-Dienst-Code 102 spezifiziert die Operation der ALU 111 durch die ALUDEC 107, wobei die ALU 111 den Vergleich zwischen dem Wert (α – 6) in dem TA-Register 114 und dem Wert (α – 6) in dem TC-Register 112 ausführt. Wenn sie übereinstimmen, wird der Wert (α – 6) in dem TA-Register 114 zur ALU 111 weitergeleitet, wobei die ALU 111 die von dem CPU-Monitor-Macro-Dienst-Code 102 durch die ALUDEC 107 spezifizierte Dekreierung ausführt, um den Ausführungsergebniswert (α – 7) zum TA-Register 114 zu transferieren.
  • Gemäß der Benennung durch den CPU-Monitor-Macro-Dienst-Code 102 durch die ALUDEC 107 vergleicht die ALU 111 den im TA-Register 114 gesicherten Wert (α – 7) und den Wert β oder die in dem TC-Register 112 gesicherte SFR-Ausgabezieladresse β. Wenn sie verschieden sind, wird der Wert (α – 7) in dem TA-Register 114 zur ALU 111 ausgegeben, wobei die ALU 111 die von der ALUDEC 107 spezifizierte Dekrementierung des Wertes (α – 7) durchführt, um den Ausführungsergebniswert (α – 8), der das Ergebnis des Diagnostizierens der CPU darstellt, zum TA-Register 114 zu transferieren.
  • Schließlich wird der Wert (α – 8) des TA-Registers 114, das die Ausführungsergebnisdaten der CPU-Diagnose speichert, gemäß der im TB-Register 113 gesicherten SFR-Ausgabeadresse nach außen 120 aus dem Microcomputer ausgegeben. Somit kann der Benutzer von außen den Status der CPU prüfen, indem er sich auf den Wert (α – 8) bezieht.
  • Wie oben beschrieben wird die CPU von dem CPU-Monitor-Macro-Dienst diagnostiziert, der eine Folge von Instruktionen unter Verwendung von internen Interrupts ausführt. Dies reduziert die Zeit für das Lesen der Instruktionen verglichen mit konventionellen Verfahren zum Lesen von außen mittels eines Programms zur Verwendung beim Selbstdiagnostizieren der CPU. Dadurch kann die CPU in dem Microcomputer, auch wenn sie auf der Benutzerkarte sitzt, schnell diagnostiziert werden.
  • Legende zu den Figuren:
    Englisch Deutsch
    Figur 1:
    EXTERNAL MEMORY externer Speicher
    DATA BUS Datenbus
    INTERRUPT PROCESSING UNIT Interruptverarbeitungseinheit
    CPU DIAGNOSIS MODULE CPU-Diagnosemodul
    CPU MONITOR MACRO SERVICE CPU-Monitor-Macro-Dienst
    OUTPUT MODULE Ausgabemodul
    INPUT/OUTPUT PORT Eingabe-/Ausgabe-Port
    Figur 2:
    INTERRUPT SIGNAL Interruptsignal
    MICRO ROM Micro-ROM
    CPU MONITOR MACRO SERVICE CODE CPU-Monitor-Macro-Dienst-Code
    MICRO ROM CONTROL CIRCUIT Micro-ROM-Steuerkreis
    COMMAND CODE LATCH Befehlscoderegister
    RAM ADDRESS BUFFER RAM-Adreß-Zwischenspeicher
    RAM ADDRESS TEMPORARY REGISTER temporäres RAM-Adreßregister
    DATA BUS Datenbus
    MICRO ORDER Microbefehl
    SPECIAL ORDER Spezialbefehl
    ALU REGISTER ALU-Register
    TC REGISTER TC-Register
    TB REGISTER TB-Register
    TA REGISTER TA-Register
    PORT Port

Claims (2)

  1. Microcomputer mit einer Selbstdiagnoseeinheit, umfassend: eine CPU (1); einen RAM (2, 110), der beliebig beschrieben und gelesen wird; einen Datenbus (4, 103); und einen Eingabe-/Ausgabe-Port (5, 118); dadurch gekennzeichnet, daß er außerdem umfaßt: einen Micro-ROM (115); einen CPU-Monitor-Macro-Dienst (6), der ein Programm zum Ausführen einer Folge von Instruktionen zum Diagnostizieren der CPU des Microcomputers mit Bezug auf zuvor von außen gegebene Daten ist, wobei das Programm in Reaktion auf ein externes Interrupt-Signal ausgeführt wird, wobei Instruktions-Codes (102) des CPU-Monitor-Macro-Diensts (6) in dem Micro-ROM (115) gespeichert sind; eine Micro-ROM-Steuerschaltung (101) zum Steuern des Micro-ROMs (115), die den CPU-Monitor-Macro-Dienst (6) durch Benennen einer Adresse des in dem Micro-ROM (115) gespeicherten Codes nach Erhalt des externen Interrupt-Signals startet; und eine Ausgabeeinheit (8), die ein Ergebnis der Diagnose unter Verwendung der von außen gegebenen Daten nach außen aus dem Microcomputer ausgibt.
  2. Microcomputer nach Anspruch 1, umfassend: ein, erstes Register (114), das einen Anfangswert für die Diagnose speichert, wobei das Speichern von dem CPU-Monitor-Macro-Dienst (6) durchgeführt, wobei der Anfangswert vor der Aktivierung des CPU-Monitor-Macro-Diensts unter Verwendung eines, in einem externen Speicher (11) residenten Benutzerprogramms in den RAM (2, 110) geschrieben wird; ein zweites Register (112), das eine Adresse speichert, die ein Ausgabeziel für einen Ergebniswert der Diagnose bestimmt, wobei die Adresse vor der Aktivierung des CPU-Macro-Monitordiensts (6) unter Verwendung eines in dem externen Speicher (11) residenten Benutzerprogramms in den RAM geschrieben wird; ein drittes Register (113), das zum Zwischenspeichern von Daten verwendet wird, die in Registern, die der Diagnose unterzogen werden, gespeichert werden, wobei diese Register während der Diagnose mit einem Wert überschrieben werden, der in dem ersten Register (114) gespeichert ist, wobei das dritte Register (113) ermöglicht, daß die der Diagnose unterzogenen Register nach der Diagnose wiederhergestellt werden und dann die gleichen Daten wie vor dem Starten der Diagnose enthalten; eine Benennungseinheit, die das dritte Register benennt; ein viertes Register (126), das ein Ergebnis einer arithmetischen Operation speichert, die auf einem Wert durchgeführt wird, der von einem der Diagnose unterzogenen Register gespeichert wird; und eine Ausgabeeinheit (8), die das Ergebnis von dem vierten Register (126) zum ersten Register (114) nach der Diagnose speichert und den im ersten Register (114) gespeicherten Wert über einen von dem zweiten Register (112) benannten Port nach außen aus dem Microcomputer ausgibt.
DE69725808T 1996-08-28 1997-08-27 Mikrorechner mit Selbstprüfungseinheit Expired - Fee Related DE69725808T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP22658196 1996-08-28
JP08226581A JP3141787B2 (ja) 1996-08-28 1996-08-28 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
DE69725808D1 DE69725808D1 (de) 2003-12-04
DE69725808T2 true DE69725808T2 (de) 2004-05-19

Family

ID=16847422

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69725808T Expired - Fee Related DE69725808T2 (de) 1996-08-28 1997-08-27 Mikrorechner mit Selbstprüfungseinheit

Country Status (5)

Country Link
US (1) US6125456A (de)
EP (1) EP0827080B1 (de)
JP (1) JP3141787B2 (de)
KR (1) KR19980019215A (de)
DE (1) DE69725808T2 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19833208C1 (de) * 1998-07-23 1999-10-28 Siemens Ag Integrierte Schaltung mit einer Selbsttesteinrichtung zur Durchführung eines Selbsttests der integrierten Schaltung
DE10041697A1 (de) * 2000-08-24 2002-03-14 Infineon Technologies Ag Verfahren zum Testen einer programmgesteuerten Einheit durch eine externe Testvorrichtung
EP1496435A1 (de) * 2003-07-11 2005-01-12 Yogitech Spa Gesicherte Mikrokontroller, Verfahren zum Entwurf eines gesichertes Mikrokontrollers, und Computerprogrammprodukt dafür
US7856549B2 (en) * 2007-01-24 2010-12-21 Hewlett-Packard Development Company, L.P. Regulating power consumption
GB2561881A (en) 2017-04-27 2018-10-31 Airbus Group Ltd Microcontroller

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0018736A1 (de) * 1979-05-01 1980-11-12 Motorola, Inc. Selbstprüfender Microcomputer und Prüfverfahren
JPS5696331A (en) * 1979-12-28 1981-08-04 Fujitsu Ltd Panel function control system
JPS5920069A (ja) * 1982-07-26 1984-02-01 Toshiba Corp 1チツプマイクロコンピユ−タ
EP0153764B1 (de) * 1984-03-02 1993-11-03 Nec Corporation Informationsverarbeitungseinheit mit Unterbrechungsfunktion
JPS60183639A (ja) * 1984-03-02 1985-09-19 Nec Corp デ−タ処理装置
JPH0821028B2 (ja) * 1986-04-23 1996-03-04 株式会社日立製作所 デ−タ処理装置
JPS6367647A (ja) * 1986-09-09 1988-03-26 Yokogawa Electric Corp マイクロプロセツサ応用機器
JPH0212432A (ja) * 1988-06-30 1990-01-17 Nec Corp データ処理装置
JPH06105432B2 (ja) * 1989-06-01 1994-12-21 三菱電機株式会社 マイクロプロセッサ
JPH0410138A (ja) * 1990-04-27 1992-01-14 Omron Corp テストプログラム機能付き制御装置
JPH04178742A (ja) * 1990-11-13 1992-06-25 Mitsubishi Electric Corp 装置診断制御方式
JPH05233352A (ja) * 1992-02-19 1993-09-10 Nec Corp マイクロプロセッサ
EP0569969B1 (de) * 1992-05-12 1998-03-04 Nec Corporation Mikrocomputer mit Befehlsspeicher für Befehle zum Auslesen interner Bedingungen
JPH06162225A (ja) * 1992-11-17 1994-06-10 Hitachi Ltd 自己テスト機能内蔵シングルチップマイコン
JP3323009B2 (ja) * 1994-09-29 2002-09-09 日本電気株式会社 データ処理装置
JPH08137824A (ja) * 1994-11-15 1996-05-31 Mitsubishi Semiconductor Software Kk セルフテスト機能内蔵シングルチップマイコン

Also Published As

Publication number Publication date
JP3141787B2 (ja) 2001-03-05
KR19980019215A (ko) 1998-06-05
EP0827080B1 (de) 2003-10-29
EP0827080A3 (de) 1999-05-06
DE69725808D1 (de) 2003-12-04
US6125456A (en) 2000-09-26
JPH1069399A (ja) 1998-03-10
EP0827080A2 (de) 1998-03-04

Similar Documents

Publication Publication Date Title
DE3685876T2 (de) Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher.
DE69434473T2 (de) Prozessorschnittstellenchip für Doppelmikroprozessorsystem
DE3784996T2 (de) Fehlersuchmikroprozessor.
DE3781873T2 (de) Rekonfigurierbare rechenanordnung.
DE4329336C2 (de) Einrichtung und Verfahren zur Identifizierung eines Computer-Mikroprozessors
EP0011685B1 (de) Programmierbare Speicherschutzeinrichtung für Mikroprozessorsysteme und Schaltungsanordnung mit einer derartigen Einrichtung
DE19529434B4 (de) Microprozessorsystem für sicherheitskritische Regelungen
DE2722099C2 (de)
DE2244402A1 (de) Datenverarbeitungsanlage
EP0104635A2 (de) Verfahren und Anordnung zum Prüfen eines digitalen Rechners
DE19835610A1 (de) Programmgesteuerte Einheit und Verfahren zum Debuggen derselben
DE102004012279B3 (de) Verfahren und Vorrichtung zum Speicherselbsttest von eingebetteten Speichern in Halbleiterchips
DE69725808T2 (de) Mikrorechner mit Selbstprüfungseinheit
DE102005037403A1 (de) Verfahren zum Überprüfen der Funktionsfähigkeit der Arithmetik-Logik-Einheit (ALU) eines Steuermoduls
EP1716490B1 (de) Einrichtung und verfahren zur analyse von eingebetteten systemen für sicherheitskritische rechnersysteme in kraftfahrzeugen
DE102005009813A1 (de) Elektronisches Steuerungssystem und -Verfahren mit Microcomputerüberwachungs-Unterdrückungsfunktion
DE69817852T2 (de) Speicherschutzsystem für ein multitaskingsystem
DE19525100C2 (de) Verfahren zur On-Board-Programmierung eines elektrisch programmierbaren Nur-Lese-Speichers
DE19940611B4 (de) Verfahren zum Erzeugen von Testergebnissen während einer Selbstprüfung, Verfahren zum Signalisieren einer erfolgreichen Beendigung der Selbstprüfung und Verarbeitungssystem mit der Fähigkeit zur Selbstprüfung
EP1750283B1 (de) Überprüfung eines Adressdecoders
DE2106731A1 (de) Diagnoseeinrichtung fur elektronische Datenverarbeitungsanlagen
EP0613077B1 (de) Verfahren zur Reset-Erzeugung in Datenverarbeitungsanlagen
DE3612730C2 (de)
DE10128996B4 (de) Verfahren und Vorrichtung zur Überwachung von Speicherzellen eines flüchtigen Datenspeichers
DE3433679A1 (de) Verfahren und anordnung zur sicherung von wichtigen informationen in speichereinheiten mit wahlweisem zugriff, insbesondere von steuerbits in als cache-speicher arbeitenden pufferspeichern einer datenverarbeitungsanlage

Legal Events

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