DE69915788T2 - Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung - Google Patents

Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung Download PDF

Info

Publication number
DE69915788T2
DE69915788T2 DE69915788T DE69915788T DE69915788T2 DE 69915788 T2 DE69915788 T2 DE 69915788T2 DE 69915788 T DE69915788 T DE 69915788T DE 69915788 T DE69915788 T DE 69915788T DE 69915788 T2 DE69915788 T2 DE 69915788T2
Authority
DE
Germany
Prior art keywords
unit
interface
test
data
signals
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 - Lifetime
Application number
DE69915788T
Other languages
English (en)
Other versions
DE69915788D1 (de
Inventor
Osamu Kawasaki-shi Tago
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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of DE69915788D1 publication Critical patent/DE69915788D1/de
Publication of DE69915788T2 publication Critical patent/DE69915788T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • G06F11/364Software debugging by tracing the execution of the program tracing values on a bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich auf eine Vorrichtung zum Testen eines Mikrocontrollers, die eine Funktion zum Ausführen eines Programmtests wie z. B. einer Programmfehlersuche und -beseitigung und eine Funktion zum Ausführen eines Systemtests wie z. B. einer Systemfehlersuche und -beseitigung aufweist, und bezieht sich auch auf ein Verfahren zum Ausführen eines Programmtests und Systemtests.
  • Konkreter bezieht sich die vorliegende Erfindung auf eine Vorrichtung zum Testen eines Mikrocontrollers, die eine Testeinrichtung enthält, die eine Programmentwicklungsumgebung schafft, um Programm-(Software-) Fehler eines Mikrocontrollers zu suchen und zu beseitigen, und auch eine Umgebung zum Test eines von einem Nutzer erzeugte Systems schafft, um einen Fehler eines Systems (Hardware) zu suchen und zu beseitigen, das von einem Nutzer erzeugt wurde, und auch eine Systemtestfunktion aufweist, die eine Operation eines internen Busses in der Testeinrichtung beliebig verfolgen (engl. trace) kann. Die vorliegende Erfindung bezieht sich auch auf ein Verfahren zum Testen eines Mikrocontrollers, um ein Programm auszutesten und das vom Nutzer erzeugte System auszutesten, indem die oben erwähnte Vorrichtung verwendet wird.
  • Wenn das von einem Nutzer erzeugte System getestet wird, ist es gegenwärtig notwendig, das System zu der Umgebung, in der das Programm ursprünglich entwickelt wurde, unter Verwendung eines ICE (Echtzeit-Modulations- und Testadapters) (engl. In-Circuit Emulator) zurückzuholen, um zu wissen, in welchem Zustand der Mikrocontroller ist. Auf der anderen Seite verwendet der Nutzer wahrscheinlich den ICE, wenn er Software für den Mikrocontroller entwickelt. Um einen solchen Bedarf des Nutzers zu unterstützen und zu erfüllen, wird eine einem ICE zugeordnete oder für einen ICE bestimmte Einrichtung hergestellt.
  • Die Anzahl von Mannstunden zum Entwickeln von Programmen des Mikrocontrollers wurde jedoch reduziert, und die Anzahl von Mannstunden zum Testen des von einem Nutzer erzeugten Systems nach der Entwicklung einer Systemtesteinrichtung, die darauf gerichtet ist, das vom Nutzer erzeugte System zu bewerten, wurde ebenfalls reduziert. Folglich entstand ein Bedarf an der Reduzierung der Anzahl von Mannstunden zur Herstellung einer Programmtesteinrichtung, d. h. einer für einen ICE bestimmten Einrichtung. Was das vom Nutzer erzeugte System selbst anbetrifft, trat auf der anderen Seite die Anforderung auf, die Operation des Mikrocontrollers unter der gleichen Bedingung wie in dem Fall zu testen, in welchem ein in Masse gefertigter Chip mit der darin zusammengesetzten Einrichtung montiert wird.
  • Aus diesen Gründen trat der Bedarf auf, für einen ICE bestimmte Einrichtungen, die bisher entwickelt wurden, zu überdenken und das vom Nutzer erzeugte System durch die internen Funktionen des Mikrocontrollers zu testen.
  • 2. Beschreibung der verwandten Technik
  • Wenn das Programm des Mikrocontrollers und das vom Nutzer erzeugte System getestet werden, war es in der Vergangenheit üblich, das Programm durch Verwenden eines ICE und einer für einen ICE bestimmten Einrichtung zu bewerten und das vom Nutzer erzeugte System durch Verwenden der Systemtesteinrichtung zu bewerten, die von der für den ICE bestimmten Einrichtung separat entwickelt wird.
  • Es wird eine konkretere Erläuterung geliefert. Bisher wurden für Mikrocontroller drei Arten von Chips entwickelt, d. h. ein EVA (Evaluation), OTP (engl. One Time Programmable) (einmalig programmierbar) und MASK (Maske).
  • Unter diesen Chips ist es der EVA, der mit dem ICE verbunden werden kann und eine Programmfehlersuche und -beseitigung ausführen kann. Die oben beschriebene, für einen ICE zugeordnete Einrichtung wird in diesen Chip montiert. Der OTP ist der Chip, der praktisch auf einer Nutzerplatine montiert und zum Testen des vom Nutzer erzeugten Systems verwendet wird. Die oben beschriebene Systemtesteinrichtung wird in diesen Chip montiert. Nachdem das vom Nutzer erzeugte System getestet ist, wird der MASK entwickelt, und eine Massenproduktion der Chips wird gestartet.
  • In den letzten Jahren wurde jedoch der die Systemtesteinrichtung darin enthaltende OTP durch einen Flash-Mikrocontroller ersetzt, in welchem ein ROM (Nurlesespeicher) und ein RAM (Direktzugriffsspeicher) einen Flash-Speicher umfassen. Im Gegensatz zum OTP, der das Programm nur einmal schreiben kann, kann dieser Flash-Speicher 102- bis 105-mal neu beschrieben oder wie derbeschrieben werden. Der einen solchen Flash-Speicher enthaltende Flash-Mikrocontroller kann das Systemprogramm, d. h. das Programm für das vom Nutzer erzeugte System, einfach wiedereinschreiben. Daher bewerten die Nutzer eher das Systemprogramm unter Verwendung des Flash-Mikrocontrollers und beginnen dann z. B. die Massenherstellung der Chips ohne Entwickeln des MASK. Auf den Gebieten eines HDD (Festplattenlaufwerk) und tragbarer elektronischer Anwendungen beispielsweise wurde die Anzahl von Anwendern oder Nutzern, die die Massenherstellung von Chips ausführen, indem nur der Flash-Mikroncontroller genutzt wird, erhöht, weil eine Verbesserung oder ein Upgrade einer Version des Systemprogramms auf solchen Gebieten häufig vorgenommen wird.
  • Einer der Gründe, warum eine solche Tendenz auftrat, ist, weil der Preis des Flash-Mikrocontrollers, der einmal das Vier- bis Fünffache des Preises des MASK betrug, auf den 1,2- bis 1,5-fachen gefallen ist. Diese Tendenz hat sich gegenwärtig auf dem Gebiet beschleunigt, in welchem sich die Tendenz zur Massenherstellung der Chips des Flash-Mikrocontrollertyps weit verbreitet hat. Daher wurde es jetzt notwendig, den EVA, der die dem ICE zugeordnete Einrichtung enthält, und den Flash-Mikrocontroller (einschließlich des OTP), der die Systemtesteinrichtung enthält, separat zu entwickeln.
  • Die Programmentwicklungszyklen von Nutzern wurden schneller, und das Programm wurde in den letzten Jahren innerhalb einer kürzeren Zeit fixiert mit der Folge, dass der Testzeitplan des vom Nutzer erzeugten Systems kürzer wurde. Da die Anzahl von Mannstunden für die Systemtesteinrichtung folglich erhöht werden muss, wurde es schwieriger, die Anzahl von Mannstunden einer Entwicklung der Systemtesteinrichtung unabhängig von der Anzahl von Mannstunden der für einen ICE bestimmten Einrichtung festzulegen. Da das vom Nutzer erzeugte System komplizierter wurde, wurde überdies die Grenze für den Test des vom Nutzer erzeugten Systems unter Verwendung der Systemtesteinrichtung offensichtlicher. Folglich wurde es unverzichtbar, eine Einrichtung zu entwickeln, die die Bedingung des Programmtests und die Bedingung des Tests eines vom Nutzer erzeugten Systems vollständig erfüllen kann.
  • Selbst wenn der Mikrocontroller durch die oben beschriebenen Verfahren getestet wird, passt nämlich die Summe von (Anzahl Mannstunden einer Pro grammentwicklung + Anzahl Mannstunden einer Entwicklung einer Einrichtung, die ausschließlich für einen ICE ausgelegt ist) nicht mit der Summe aus "Anzahl Mannstunden einer Entwicklung einer für einen ICE bestimmten Einrichtung" und einer "Anzahl Mannstunden einer Entwicklung einer Systemtesteinrichtung" zusammen. Folglich wurde ein Mittel notwendig, um eine Umgebung zum schnellen und effizienten Testen des vom Nutzer erzeugten Systems zu schaffen. Es wurde auch notwendig, eine Testumgebung des vom Nutzer erzeugten Systems zu schaffen, die mit einer Komplikation des vom Nutzer erzeugten Systems zurecht kommen kann.
  • Um die Probleme des Testsystems des Mikrocontrollers gemäß dem Stand der Technik zu klären, das ersonnen wurde, um die oben beschriebenen Nachteile zu eliminieren, wird der Aufbau der Testeinrichtung, die herkömmlicherweise zum Testen des Mikrocontrollers genutzt wird, und des Testsystems des Mikrocontrollers, das diese Testeinrichtung nutzt, mit Verweis auf 1 und 2 der später auftauchenden "KURZE BESCHREIBUNG DER ZEICHNUNG" erläutert.
  • 1 zeigt den Aufbau der Testeinrichtung, die herkömmlicherweise zum Testen des Mikrocontrollers verwendet wird. Wie in 1 gezeigt ist, enthält diese Testeinrichtung (d. h. die für den ICE bestimmten Einrichtung) 110 darin eine Serviceprogramm- oder Tool-Schnittstelle (d. h. eine ICE-Schnittsteile 104) mit einer Schnittstellenfunktion mit einem ICE 90 (siehe 2), eine CPU (zentrale Verarbeitungseinheit), um ein Programm auszutesten oder einen Programmfehler zu suchen und zu beseitigen, eine periphere Schaltung 107, um das von der Tool-Schnittstelle gesendete Steuersignal zu verarbeiten, einen eingebauten RAM 103, um das vom ICE 90 gesendete Programm vorübergehend zu speichern, und eine einen Bus überwachende Einheit 107, um den Zustand eines internen Busses 160 zu überwachen.
  • Nachdem die für einen ICE bestimmte Einrichtung 100 über die Tool-Schnittstelle 104 mit dem ICE 90 verbunden ist, wird sie mit der Systemtestplatine etc. über das Sondenkabel (z. B. der später auftauchenden Zielsonde 102 in 2) verbunden. Auf diese Weise werden eine Programmfehlersuche und -beseitigung und ein Test des vom Nutzer erzeugten Systems ausgeführt.
  • Im folgenden wird eine Erläuterung in weiteren Einzelheiten gegeben. In Vorrichtungen nach dem Stand der Technik ist die für einen ICE bestimmte Tool-Schnitstelle 104 in der Einrichtung eingebaut, und das vom mit dem ICE 90 verbundenen Speicher ausgegebene Programm wird vom Programmlader 109 zur Bussteuereinheit 108 geladen. Die einen Bus überwachende Einheit 105 überwacht den Zustand des internen Busses 160, und durch den ICE wird über die Tool-Schnittstelle 104 eine Emulation ausgeführt.
  • Die für einen ICE bestimmte Einrichtung 100 weist nicht den eingebauten wiederbeschreibbaren Programm-ROM auf. Daher wird die Funktionseinheit A, die die Tool-Schnittstelle 104 und die Bussteuereinheit 108 enthält, praktisch als der Programmspeicher betrachtet, und der Programmteil, den man wiedereinschreiben möchte, wird vom ICE 90 über die Tool-Schnittstelle 104 zum Programmspeicher geladen. Zu dieser Zeit wird eine Überwachung des internen Busses 160 ausgeführt, so dass das Programm getestet werden kann.
  • Ein Blockdiagramm, das das Testsystem des herkömmlichen Mikrocontrollers zeigt, das die in 1 dargestellte, für einen ICE bestimmte Einrichtung 100 nutzt, ist in 2 veranschaulicht. Der Aufbau des herkömmlichen Testsystems des Mikrocontrollers ist jedoch in vereinfachter Form dargestellt, um die Erklärung zu erleichtern.
  • 2 zeigt konkret die Montageposition der für einen ICE bestimmten Einrichtung 100 und ihre Rolle, wenn diese Einrichtung 100 für einen Systemtest verwendet wird. Das Programm, das durch einen Personalcomputer 98 programmiert wird, wird hier vom ICE 90 über die Tool-Schnittstelle 104 in die für einen ICE bestimmte Einrichtung 100 geladen. Die für einen ICE bestimmte Einrichtung 100 ist an einem Teil 110 zur Montage einer Systemtesteinrichtung der Systemtestplatine 92-2 montiert. Ein Operations- oder Betriebssignal wird an die Systemtestplatine 92-2 geliefert. Ob die Systemtestplatine zu dieser Zeit normal arbeitet oder nicht, kann einfach bestimmt werden, indem der Zustand des internen Busses 160 der für den ICE bestimmten Einrichtung 100 überwacht wird. Die Information über den Zustand des internen Busses 160 wird daher in die Form umgewandelt, die vom Personalcomputer 98 erfasst werden kann, und eine Programmfehlersuche und -beseitigung wird von diesem Personalcomputer 98 ausgeführt.
  • Eine Erläuterung wird in weiteren Einzelheiten gegeben. Im herkömmlichen Testsystem des Mikrocontrollers, das in 2 dargestellt ist, enthält die für einen ICE bestimmte Einrichtung 100, um den Mikrocontroller zu bilden, als eingebaute Einrichtungen die Tool-Schnittstelle 104 mit der Schnittstellenfunktion mit dem ICE 90 und die Zielsonde 102 zum Umwandeln der Form der vom ICE 90 gelieferten Signale. Die vom ICE 90 gelieferten Signale enthalten das Steuersignal Sic, um die CPU 106 im Innern der für einen ICE bestimmten Einrichtung 100 zu steuern, und die Adreß/Datensignale Sia, die sich auf das vom ICE 90 angebotene Programm beziehen. Dieses Steuersignal Sic und diese Adreß/Datensignaie Sia werden durch die Tool-Schnittstelle 104 verarbeitet und dann zur CPU 106 und zur Zielsonde 102 übertragen.
  • Die Tool-Schnittstelle 104 ist im allgemeinen ausgestattet mit einer peripheren Funktion zum Verarbeiten der Signale der seriellen Form und der Signale der parallelen Form und kann die Signale einer beliebigen Form, die vom ICE 90 geliefert werden, durch diese periphere Funktion verarbeiten. Auf der anderen Seite ist die Zielsonde 102 typischerweise ausgestattet mit einer Anzahl von Jumper-Leitungen zur Signalübertragung. Nachdem die Form der Adreß/Datensignale Sia vom ICE 90 durch die Zielsonde 102 umgewandelt ist, werden diese Signale über die Jumper-Leitungen an den Teil 110 zur Montage einer Systemtesteinrichtung der Systemtestplatine (die auch die "Zielplatine" genannt wird) 92-2 gesendet.
  • In dem in 2 gezeigten Aufbau lässt man die CPU 106 im Innern der für den ICE bestimmten Einrichtung 100 eine Programmfehlersuche und -beseitigung ausführen, indem das Programm des ICE 90 ausgeführt oder abgearbeitet wird, während die für den ICE bestimmte Einrichtung 100 an der Programmtestplatine 92-1 montiert ist. Gleichzeitig wird das Programm des ICE 90 über die Zielsonde 102 an den Teil 110 zur Montage einer Systemtesteinrichtung gesendet, um den gleichen Zustand wie den Zustand zu erzeugen, in dem die Systemtesteinrichtung praktisch an der Systemtestplatine 92-2 montiert ist. Auf diese Weise kann das vom Nutzer erzeugte System durch Verwenden allein der für den ICE bestimmten Einrichtung getestet werden.
  • Wie oben beschrieben wurde, ist im herkömmlichen Testsystem des Mikrocontrollers, das in 1 und 2 dargestellt ist, die Zielsonde für die für den ICE bestimmte Einrichtung vorgesehen, die hauptsächlich auf die Programmfehlersuche und -beseitigung gerichtet war, um die Programmentwicklung und den Test des vom Nutzer erzeugten Systems innerhalb einer kürzeren Zeit zu bewältigen, und der Test eines vom Nutzer erzeugten Systems wird auf einfache Weise ausgeführt, indem die mit der Zielsonde ausgestattete, für den ICE bestimmte Einrichtung genutzt wird.
  • Gemäß solch einem Aufbau wird jedoch das Signal für einen Programmtest vom ICE über die Zielsonde an die Systemtestplatine geliefert. Daher ergibt sich die Möglichkeit, dass ein Test des vom Nutzer erzeugten Systems nicht korrekt ausgeführt werden kann, weil ein AC-(Advanced Communication) Standard, der den zu übertragenden Signalen aufgeprägt ist, leicht schwankt. Daher bleibt das Problem insofern ungelöst, als ein Test eines vom Anwender oder Nutzer erzeugten Systems wieder notwendig wird, indem die Systemtesteinrichtung an der Systemtestplatine montiert wird.
  • Auf der anderen Seite wurde das vom Nutzer erzeugte System so kompliziert, dass Programmdefekte (Verzweigungsbedingungen) nicht erfasst werden können, selbst wenn die Systemtesteinrichtung verwendet wird. Folglich erfordert es viel Mühe und Zeit, die Programmfehler in der Software von außerhalb der Systemtesteinrichtung zu entdecken, und ein die Systemtesteinrichtung nutzender Test eines vom Nutzer erzeugten Systems behindert leicht die effiziente Entwicklung des vom Nutzer erzeugten Systems.
  • EP-A-0 391 173 offenbart eine Peripherieeinrichtung zur Fehlersuche und -beseitigung für Mikrocomputer, Mikroprozessoren und Schaltungen mit integriertem Kernprozessor.
  • US-A-5,566,300 offenbart einen Mikrocomputer mit einer eingebauten Fähigkeit zur Fehlersuche und -beseitigung.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Im Hinblick auf die oben beschriebenen Probleme ist es eine Aufgabe der vorliegenden Erfindung, eine Vorrichtung zum Testen eines Mikrocontrollers, die eine Programmtesteinrichtung und eine Systemtesteinrichtung innerhalb einer kurzen Zeit entwickeln und einen Test eines vom Nutzer erzeugten Systems leicht und effizient ausführen kann, und ein Testverfahren dafür zu schaffen.
  • Um diese Aufgabe zu lösen, umfasst eine Vorrichtung zum Testen eines Mikrocontrollers gemäß einem ersten Gesichtspunkt der vorliegenden Erfin dung, wie sie im beigefügten Anspruch 1 detailliert definiert ist, in einer Einrichtung eine wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten; eine Verarbeitungseinheit, um die beliebigen Daten durch Betreiben eines Mikrocontrollers auf der Basis eines Steuersignals zu verarbeiten; eine Schnittstelleneinheit für eine externe Kommunikation, um von außen (z. B, einer externen Einrichtung) gelieferte Signale zu empfangen, das Steuersignal herauszunehmen und es an die Verarbeitungseinheit zu senden; und eine einen internen Bus überwachende Einheit, um den Zustand eines internen Busses zum gegenseitigen Verbinden der Datenhalteeinheit, der Verarbeitungseinheit und der Schnittstelle für eine externe Kommunikation zu überwachen.
  • Die Verarbeitungseinheit hat hier einen solchen Aufbau, dass sie den Zustand des internen Busses zu der Zeit, zu der der Mikrocontroller auf der Basis des Steuersignals betrieben wird, in die einen internen Bus überwachende Einheit schreibt und die in diese einen internen Bus überwachende Einheit geschriebenen Daten in die Datenhalteeinheit eingibt oder die Daten nach außen sendet.
  • In der Vorrichtung zum Testen des Mikrocontrollers gemäß der vorliegenden Erfindung hat die Schnittstelleneinheit für eine externe Kommunikation vorzugsweise eine Seriell/Parallel-Schnittstellenschaltung, die eine serielle Schnittstelle zum Verarbeiten von Signalen einer seriellen Form und eine parallele Schnittstelle zum Verarbeiten von Signalen einer parallelen Form enthält.
  • Die Anschlüsse von jeder der seriellen Schnittstelle und der parallelen Schnittstelle in der Seriell/Parallel-Schnittstellenschaltung können auch als die Anschlüsse zum Behandeln der für Mehrzweckports verwendeten Signale fungieren. Wenn die Anschlüsse von jeder der seriellen Schnittstelle und der parallelen Schnittstelle in der Parallel/Seriell-Schnittstellenschaltung auch als die Anschlüsse zum Behandeln der Eingangs/Ausgangssignale fungieren, die von den für die Mehrzweckports verwendeten Signale verschieden sind, können diese Anschlüsse zu den Anschlüssen umgeschaltet werden, um die von den für den Mehrzweckport verwendeten Signalen verschiedenen Eingangs/Ausgangssignale während der Periode zu behandeln, in der die serielle Schnittstelle und die parallele Schnittstelle verwendet werden.
  • Auf der anderen Seite umfasst eine Vorrichtung zum Testen eines Mikrocontrollers gemäß einem zweiten Gesichtspunkt der vorliegenden Erfindung, wie sie im Anspruch 11 ausführlich definiert ist, in einer ersten Einrichtung eine erste wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten; eine erste Verarbeitungseinheit, um die beliebigen Daten durch Betreiben eines Mikrocontrollers auf der Basis eines ersten Steuersignals zu verarbeiten; eine erste Schnittstelleneinheit für eine externe Kommunikation, um von außen zugeführte Signale zu empfangen, das erste Steuersignal herauszunehmen und es an die erste Verarbeitungseinheit zu senden; eine einen ersten internen Bus überwachende Einheit zum Überwachen des Zustands eines ersten internen Busses zum gegenseitigen Verbinden der ersten Datenhalteeinheit, der ersten Verarbeitungseinheit und der ersten Schnittstelleneinheit für eine externe Kommunikation. Überdies umfaßt die Testvorrichtung in einer zweiten Einrichtung eine zweite wiedereinschreibbare Daten haltende Einheit, um beliebige Daten zu erhalten; eine zweite Verarbeitungseinheit, um die beliebigen Daten durch Betreiben des Mikrocontrollers auf der Basis eines zweiten Steuersignals zu verarbeiten; eine zweite Schnittstelleneinheit für eine externe Kommunikation, um die Signale von der ersten Schnittstelleneinheit für eine externe Kommunikation zu empfangen, das zweite Steuersignal herauszunehmen und es an die zweite Verarbeitungseinheit zu senden; und eine einen zweiten internen Bus überwachende Einheit, um den Zustand eines zweiten internen Busses zum gegenseitigen Verbinden der zweiten Datenhalteeinheit, der zweiten Verarbeitungseinheit und der zweiten Schnittstelleneinheit für eine externe Kommunikation zu überwachen.
  • Ein Programmtest des Mikrocontrollers wird in der Testvorrichtung des Mikrocontrollers mit dem oben beschriebenen Aufbau in der folgenden Weise ausgeführt. Die erste Einrichtung und die zweite Einrichtung werden durch die erste und zweite Schnittstelleneinheit für eine externe Kommunikation verbunden. Die erste Verarbeitungseinheit in der ersten Einrichtung überträgt die von außen gelieferten Signale über die erste Schnittstelleneinheit für eine externe Kommunikation an die zweite Schnittstelleneinheit für eine externe Kommunikation. Die zweite Verarbeitungseinheit in der zweiten Einrichtung schreibt den Zustand des zweiten internen Busses zu der Zeit, zu der das Programm für ei nen Programmtest, das in den zur zweiten Schnitstelleneinheit für eine externe Kommunikation übertragenen Signalen enthalten ist, betrieben oder ausgeführt wird, in die einen zweiten internen Bus überwachende Einheit und gibt die in die einen zweiten internen Bus überwachende Einheit geschriebenen Daten in die einen ersten Bus überwachende Einheit oder die erste Datenhalteeinheit über die zweite und erste Schnitstelleneinheit für eine externe Kommunikation ein oder sendet sie nach außen. Wenn ein Systemtest des Mikrocontrollers ausgeführt wird, wird die erste Einrichtung von der zweiten Einrichtung getrennt, und die zweite Verarbeitungseinheit in der zweiten Einrichtung schreibt den Zustand des zweiten internen Busses zu der Zeit, zu der das Programm für einen Systemtest, das in den in die zweite Datenhalteeinheit geschriebenen Signalen enthalten ist, betrieben oder ausgeführt wird, über die zweite Schnittstelleneinheit für eine externe Kommunikation in die einen zweiten internen Bus überwachende Einheit und liest die von der zweiten Schnittstelleneinheit für eine externe Kommunikation in die einen zweiten internen Bus überwachende Einheit geschriebenen Daten aus.
  • Wenn die erste und zweite Einrichtung durch den gleichen Fertigungsprozess hergestellt werden, können übrigens diese Einrichtungen durch den gleichen Chip geschaffen werden.
  • In der Testvorrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung enthält die erste Schnittstelleneinheit für eine externe Kommunikation eine erste serielle Schnittstelle zum Verarbeiten der Signale der seriellen Form und eine erste parallele Schnittstelle zum Verarbeiten der Signale der parallelen Form, und die zweite Schnittstelleneinheit für eine externe Kommunikation enthält eine zweite serielle Schnittstelle zum Verarbeiten der Signale der seriellen Form und eine zweite parallele Schnittstelle zum Verarbeiten der Signale der parallelen Form. Wenn ein Programmtest des Mikrocontrollers in der Testvorrichtung des Mikrocontrollers mit einem solchen Aufbau ausgeführt wird, werden die erste und zweite Einrichtung durch die erste und zweite serielle Schnittstelle verbunden, und die von außen gelieferten Signale werden in die erste parallele Schnittstelle eingespeist und dann über die erste serielle Schnittstelle zur zweiten seriellen Schnittstelle übertragen.
  • Die erste Datenhalteeinheit weist vorzugsweise einen ersten ROM auf, der die Daten elektrisch wiedereinschreiben kann, und die zweite Datenhalteeinheit weist vorzugsweise einen zweiten ROM auf, der die Daten elektrisch wiedereinschreiben kann.
  • Die Testvorrichtung enthält vorzugsweise in der ersten Einrichtung eine erste Schreibschnittstelle auf der Platine mit einer Funktion zum Wiedereinschreiben des Inhalts der Daten im ersten ROM, während die erste Einrichtung an einer ersten Platine montiert ist, und enthält in der zweiten Einrichtung eine zweite Schreibschnittstelle auf der Platine mit einer Funktion zum Wiedereinschreiben des Inhalts der Daten innerhalb des zweiten ROM, während die zweite Einrichtung an einer zweiten Platine montiert ist.
  • Wenn auf der anderen Seite eine wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten, eine Verarbeitungseinheit zum Verarbeiten der beliebigen Daten durch Betreiben eines Mikrocontrollers, eine Schnittstelleneinheit für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und sie zu verarbeiten, und eine einen internen Bus überwachende Einheit zum Überwachen des Zustands eines internen Busses in einer Einrichtung zusammengesetzt sind, weist ein Verfahren zum Testen eines Mikrocontrollers gemäß einem dritten Gesichtspunkt der vorliegenden Erfindung, wie sie im beigefügten Anspruch 20 ausführlich definiert ist, die Schritte auf: Schreiben des Zustands des internen Busses zu der Zeit, zu der der Mikrocontroller auf der Basis des aus den von außen gelieferten Signalen herausgenommenen Steuersignals betrieben wird, in die einen internen Bus überwachende Einheit und Eingeben der in die einen internen Bus überwachende Einheit geschriebenen Daten in die Datenhalteeinheit, oder sendet sie nach außen.
  • Wenn auf der anderen Seite eine erste wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten, eine erste Verarbeitungseinheit zum Verarbeiten der beliebigen Daten durch Betreiben eines Mikrocontrollers, eine erste Schnittstelleneinheit für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen, und eine einen ersten internen Bus überwachende Einheit zum Überwachen des Zustands eines ersten internen Busses in einer ersten Einrichtung zusammengesetzt sind und wenn eine zweite wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten, eine zweite Verarbeitungseinheit zum Verarbeiten der beliebigen Daten durch Betreiben des Mikrocontrollers, eine zweite Schnittstelleneinheit zum Empfangen und Verarbeiten der von außen gelieferten Signale und eine einen zweiten internen Bus überwachende Einheit zum Überwachen des Zustands eines zweiten internen Busses in einer zweiten Einrichtung zusammengesetzt sind, umfasst ein Verfahren zum Testen eines Mikrocontrollers gemäß einem vierten Gesichtspunkt der vorliegenden Erfindung, wie sie im beigefügten Anspruch 21 definiert ist, wenn sie einen Programmtest des Mikrocontrollers ausführt, die Schritte: Übertragen der von außen gelieferten Signale zur zweiten Schnittstelleneinheit für eine externe Kommunikation über die erste Schnittstelleneinheit für eine externe Kommunikation in der ersten Einrichtung, Schreiben, in der zweiten Einrichtung, des Zustands des zweiten internen Busses zu der Zeit, zu der ein Programm für einen Programmtest, das in den zur zweiten Schnittstelleneinheit für eine externe Kommunikation übertragenen Signalen enthalten ist, in die einen zweiten internen Bus überwachende Einheit und Eingeben der in die einen zweiten internen Bus überwachende Einheit geschriebenen Daten in die einen ersten internen Bus überwachende Einheit oder die erste Datenhalteeinheit in der ersten Einrichtung über die zweite und erste Schnittstelleneinheit für eine externe Kommunikation oder Senden der Daten nach außen, und umfasst, wenn ein Systemtest des Mikrocontrollers ausgeführt wird, die Schritte: Trennen der ersten Einrichtung von der zweiten Einrichtung, Schreiben, in der zweiten Einrichtung, des Zustands des zweiten internen Busses zu der Zeit, zu der ein Programm für einen Systemtest, das in den in die zweite Datenhalteeinheit geschriebenen Signalen enthalten ist, betrieben oder abgearbeitet wird, über die zweite Schnittstelleneinheit für eine externe Kommunikation in die einen zweiten internen Bus überwachende Einheit und Auslesen der in die einen zweiten internen Bus überwachende Einheit geschriebenen Daten aus der zweiten Schnittstelleneinheit für eine externe Kommunikation.
  • Die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß der vorliegenden Erfindung können einen Programmtest und einen Systemtest einfach ausführen, während die Programmtesteinrichtung und die Systemtesteinrichtung auf der Platine des vom Nutzer erzeugten Systems montiert sind.
  • Daher müssen die Programmtesteinrichtung und die Systemtesteinrichtung nicht separat entwickelt werden, sondern können innerhalb einer kurzen Zeit entwickelt werden. In diesem Fall können sowohl die Programmtesteinrichtung als auch die Systemtesteinrichtung geschaffen werden, indem nur eine Art der Einrichtung entwickelt wird. Der Nutzer kann deshalb einen rechtzeitigen Systementwurf ausführen, und die TAT (Turnaround Time: auch die "Anzahl Mannstunden für eine Systementwicklung" genannt) kann außergewöhnlich reduziert werden. Mit anderen Worten kann die vorliegende Erfindung die Forderung des Nutzers nach der Reduzierung der Systementwurfszeit sowie der Einrichtungsentwicklung ausreichend erfüllen. Wenn ein Programmtest und ein Systemtest unter Verwendung einer Art der oben beschriebenen Einrichtungen ausgeführt werden, können die Installationskosten reduziert werden, weil das Sondenkabel nicht verwendet wird.
  • Die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß der vorliegenden Erfindung können einen Programmtest und einen Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung effizient ausführen, als ob die in Masse hergestellten Einrichtungen an der Platine des Systems montiert sind. Daher kann der Übergang von der Programmentwicklung und der Systementwicklung zur Massenfertigung der Einrichtungen reibungslos vorgenommen werden.
  • Konkreter nutzen die Testvorrichtung die Mikrocontrollers und dessen Testverfahren gemäß der vorliegenden Erfindung anstelle des EVA und des Flash-Mikrocontrollers (einschließlich des OTP) einen Chip und ermöglichen, die TAT für die Entwicklung zu verbessern und die Massenproduktion sofort zu beginnen, indem ein Ein-Chip-Mikrocontroller verwendet wird, der von diesem einen Chip gebildet wird. Im praktischen Aufbau wird eine Verbindung mit dem ICE möglich, indem zwei Ein-Chip-Mikrocontroller verwendet werden, und der Mikrocontroller kann als der Flash-Mikrocontroller genutzt werden, dessen Massenfertigung durch Verwenden eines Ein-Chip-Mikrocontrollers einfach ausgeführt werden. Folglich kann die vorliegende Erfindung die Funktionen von zwei oder drei Arten von Chips gemäß dem Stand der Technik durch Entwickeln einer Art von Chips erreichen.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die obige Aufgabe und die obigen Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung der bevorzugten Ausführungsformen mit Verweis auf die beiliegenden Zeichnungen ersichtlicher werden, worin:
  • 1 ein Blockdiagramm ist, das den Aufbau einer Testeinrichtung, die zum Testen eines Mikrocontrollers verwendet wird, gemäß dem Stand der Technik darstellt;
  • 2 ein Blockdiagramm ist, das ein Testsystem eines Mikrocontrollers gemäß dem Stand der Technik zeigt;
  • 3 ein Blockdiagramm ist, das den Aufbau einer grundlegenden Ausführungsform darstellt, die auf dem ersten Prinzip der vorliegenden Erfindung basiert;
  • 4 ein Blockdiagramm ist, das den Aufbau einer grundlegenden Ausführungsform darstellt, die auf dem zweiten Prinzip der vorliegenden Erfindung basiert;
  • 5 ein Blockdiagramm ist, das den Aufbau der ersten bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
  • 6 ein Blockdiagramm ist, das den Aufbau der zweiten bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
  • 7 ein Blockdiagramm ist, das eine modifizierte Form der in 6 gezeigten Ausführungsform darstellt;
  • 8 ein Blockdiagramm ist, das den Aufbau zum Ausführen eines erneuten Tests der Einrichtung, nachdem sie an einer Systemtestplatine montiert ist, durch die Verwendung der in 7 dargestellten Programmtesteinrichtung darstellt;
  • 9 ein Blockdiagramm ist, das die Beziehung zwischen einer in den Ausführungsformen der vorliegenden Erfindung verwendeten parallelen Schnittstelle und anderen Bestandteilelementen darstellt;
  • 10 ein Blockdiagramm ist, das den Aufbau darstellt, in welchem die Anschlüsse einer seriellen/parallelen Schnittstelle, die in den Ausführungsformen der vorliegenden Erfindung verwendet werden, auch als die Anschlüsse eines Mehrzweckports verwendet werden;
  • 11 ein Blockdiagramm ist, das den Aufbau zeigt, in welchem die Anschlüsse einer seriellen Schnittstelle, die in den Ausführungsformen der vorliegenden Erfindung verwendet wird, umschaltbar sind;
  • 12 ein Blockdiagramm ist, das den Aufbau der dritten bevorzugten Ausführungsform der vorliegenden Erfindung zeigt;
  • 13 ein Blockdiagramm ist, das eine verbesserte Form der in 12 dargestellten Ausführungsform zeigt;
  • 14 ein Blockdiagramm ist, das den Aufbau zum Ausführen eines erneuten Tests einer Einrichtung, nachdem sie an einer Systemtestplatine montiert ist, durch die Verwendung der in 13 dargestellten Programmevaluierungseinrichtung darstellt;
  • 15 ein Blockdiagramm ist, das den Aufbau der vierten bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
  • 16 ein Blockdiagramm ist, das den Aufbau der fünften bevorzugten Ausführungsform der vorliegenden Erfindung darstellt;
  • 17 ein Blockdiagramm ist, das den Aufbau der sechsten bevorzugten Ausführungsform der vorliegenden Erfindung darstellt; und
  • 18 ein Blockdiagramm ist, das den Aufbau der siebten bevorzugten Ausführungsform der vorliegenden Erfindung darstellt.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
  • Im folgenden werden mit Verweis auf die beiliegende Zeichnung (3 bis 18) die grundlegende Ausführungsform sowie die bevorzugten Ausführungsformen der vorliegenden Erfindung erläutert. Gleiche Bezugsziffern werden im folgenden übrigens verwendet, um gleiche Bestandteilelemente zu identifizieren.
  • 3 ist ein Blockdiagramm, das den Aufbau der grundlegenden Ausführungsform basierend auf dem ersten Prinzip der vorliegenden Erfindung darstellt. Eine Vorrichtung zum Testen eines Mikrocontrollers gemäß der vorliegenden Erfindung wird hier in vereinfachter Form dargelegt.
  • Die Testvorrichtung des Mikrocontrollers in der grundlegenden Ausführungsform, die auf dem ersten Prinzip der vorliegenden Erfindung basiert, enthält, wie in 3 gezeigt ist, eine wiedereinschreibbare Daten haltende Einheit 1 zum Halten beliebiger Daten, eine Verarbeitungseinheit 2, um die beliebigen Daten durch Betreiben des Mikrocontrollers auf der Basis eines Steuersignals Scc zu verarbeiten, eine Schnittstelleneinheit 5 für eine externe Kommunikation, die von außen gelieferte Signale Sext empfängt, das Steuersignal Scc extrahiert und es an die Verarbeitungseinheit 2 sendet, und eine einen internen Bus überwachende Einheit 4, um den Zustand eines internen Busses 6 zum gegenseitigen Verbinden der Datenhalteeinheit 1, der Verarbeitungseinheit 2 und der Schnittstelleneinheit 5 für eine externe Kommunikation zu überwachen. Diese Bestandteilelemente sind in einer Einrichtung (die in 3 als eine Testeinrichtung 9 dargestellt ist) zusammengesetzt.
  • Die Verarbeitungseinheit 2 schreibt den Zustand des internen Busses 6 zu der Zeit, zu der der Mikrocontroller auf der Basis des Steuersignals Scc betrieben wird, über die Schnittstelleneinheit 5 für eine externe Kommunikation in die einen internen Bus überwachende Einheit 4 und gibt die in diese einen internen Bus überwachende Einheit 4 geschriebenen Daten in die Datenhalteeinheit 1 ein oder sendet sie nach außen. Die Testeinrichtung 9 enthält ferner eine Speichereinheit 3, um ein Programm vorübergehend zu speichern, das in den von außen gelieferten Signalen Sext enthalten ist.
  • In der grundlegenden Ausführungsform, die auf dem ersten Prinzip basiert, dargestellt in 3, enthält die Schnittstelle 5 für eine externe Kommunikation vorzugsweise eine Seriell/Parallel-Schnittstellenschaltung, die eine serielle Schnittstelle zum Verarbeiten von Signalen einer seriellen Form und eine parallele Schnittstelle zum Verarbeiten von Signalen einer parallelen Form enthält.
  • In der in 3 dargestellten grundlegenden Ausführungsform, die auf dem ersten Prinzip basiert, fungieren die Anschlüsse von jeder der seriellen Schnittstelle und der parallelen Schnittstelle in der Seriell/Parallel-Schnittstellenschaltung vorzugsweise auch als die Anschlüsse, die die Signale behandeln können, die für einen Mehrzweckport genutzt werden.
  • In der in 3 dargestellten grundlegenden Ausführungsform, die auf dem ersten Prinzip basiert, können, wenn die Anschlüsse von jeder der seriellen Schnittstelle und der parallelen Schnittstelle in der Seriell/Parallel-Schnittstellenschaltung auch als die Anschlüsse fungieren, die andere Eingangs/Ausgangssignale als die für den Mehrzweckport verwendeten Signale behandeln, diese Anschlüsse vorzugsweise zu den Anschlüssen umgeschaltet werden, die die Eingangs/Ausgangssignale behandeln, die von den für den Mehrzweckport verwendeten Signalen verschieden sind, während die serielle Schnittstelle und die parallele Schnittstelle genutzt werden.
  • In der in 1 dargestellten grundlegenden Ausführungsform, die auf dem ersten Prinzip basiert, sind die Positionen der Anschlüsse der seriellen Schnittstelle in der Seriell/Parallel-Schnittstellenschaltung vorzugsweise nicht fixiert, sondern können zu mehreren Positionen umgeschaltet werden.
  • Die in 1 dargestellte grundlegende Ausführungsform, die auf dem ersten Prinzip basiert, ist vorzugsweise nicht mit einer peripheren Schaltung zum Verarbeiten der Signale der parallelen Form ausgestattet, die von der parallelen Schnittstelle innerhalb der Seriell/Parallel-Schnittstellenschaltung gesendet werden, und die von außen gelieferten Signale werden alle über die serielle Schnittstelle übertragen.
  • In der grundlegenden Ausführungsform, die auf dem ersten Prinzip basiert, dargestellt in 1, umfasst die Datenhalteeinheit 1 vorzugsweise einen ROM, der die Daten elektrisch wiedereinschreiben kann.
  • Die auf dem ersten Prinzip basierende Ausführungsform der vorliegenden Erfindung ist vorzugsweise mit einer Schreibschnittstelle auf der Platine ausgebildet, die eine Funktion zum Wiedereinschreiben der Daten im ROM aufweist, während die Einrichtung auf der Platine montiert ist.
  • Wenn die in die einen internen Bus überwachende Einheit 4 geschriebenen Daten nach außen gesendet werden, liefert die grundlegende Ausführungsform, die auf dem in 1 gezeigten Prinzip basiert, vorzugsweise eine Sicherheitsfunktion, indem den von außen (z. B. einer externen Einrichtung) gelieferten Signalen ein vorbestimmtes Passwort verliehen wird.
  • Im folgenden wird eine konkretere Erläuterung geliefert. In der Testvorrichtung der grundlegenden Ausführungsform, die auf dem ersten Prinzip der vorliegenden Erfindung basiert, dargestellt in 3, sind in einer Testeinrichtung die Datenhalteeinheit 1 wie z. B. ein wiederbeschreibbarer ROM, die Verarbeitungseinheit 2 wie z. B. eine CPU, die Speichereinheit 3 wie z. B. ein RAM, die Schnittstelle 5 für eine externe Kommunikation wie z. B. die Seriell/Parallel-Schnittstellenschaltung und die einen internen Bus überwachende Einheit 4 zum Überwachen des Zustands des internen Busses wie z. B. ein einen internen Bus 6 überwachender RAM ausgebildet und bildet einen Ein-Chip-Mikrocontroller.
  • Wenn ein Programmtest wie z. B. eine Programmfehlersuche und -beseitigung in solch einem Ein-Chip-Mikrocontroller ausgeführt wird, verarbeitet die Schnittstelleneinheit 5 für eine externe Kommunikation die von dem externen ICE etc. gelieferten Signale Sext, nimmt das Steuersignal Scc und ein Programm zur Programmfehlersuche und -beseitigung heraus und überträgt sie zu der Verarbeitungseinheit 2 und zu der Speichereinheit 3. Die Verarbeitungseinheit 2 schreibt das Programm zur Programmfehlersuche und -beseitigung in die Speichereinheit 3 und betreibt den Mikrocontroller, indem die in dieser Speichereinheit 3 gespeicherten Programme seriell ausgelesen werden. Die Verarbeitungseinheit 2 schreibt den Zustand des internen Busses 6 seriell in die einen internen Bus überwachende Einheit 4, während der Mikrocontroller auf diese Weise gerade betrieben wird (d. h. sie verfolgt den Zustand des internen Busses 6). Die auf diese Weise in die einen internen Bus überwachende Einheit 4 geschriebenen Daten werden entweder über die Schnittstelle 5 zur externen Kommunikation in die Datenhalteeinheit 1 eingegeben oder an den externen ICE oder dergleichen gesendet.
  • Wenn der Inhalt der in der Datenhalteeinheit 1 gehaltenen Daten oder der Inhalt der an den externen ICE etc. gesendeten Daten ausgelesen wird, kann ein Programmtest des Mikrocontrollers wie z. B. eine Programmfehlersuche und -beseitigung einfach ausgeführt werden.
  • Wenn auf der anderen Seite der Test eines von einem Nutzer erzeugten Systems in einem derartigen Ein-Chip-Mikrocontroller ausgeführt wird, verarbeitet die Schnittstelleneinheit 5 für eine externe Kommunikation die von außen gelieferten Signale, nimmt das Steuersignal und das Systemtestprogramm heraus und überträgt sie zur Verarbeitungseinheit 2. Die Verarbeitungseinheit 2 schreibt das Systemtestprogramm auf der Grundlage des Steuersignals Scc in die Datenhalteeinheit 1, während die Testeinrichtung (Chip) an der Testplatine montiert ist. In diesem Fall wird das Systemtestprogramm über die Schnittstelleneinheit 5 für eine externe Kommunikation oder über eine Schreibschnittstelle auf der Platine (die mit Verweis auf 5 später erläutert wird) in die Datenhalteeinheit 1 geschrieben.
  • Die Verarbeitungseinheit 2 liest das in der Datenhalteeinheit 1 gespeicherte Systemtestprogramm seriell und betreibt den Mikrocontroller. Die Verarbeitungseinheit 2 schreibt ferner den Zustand des internen Busses 6 zu der Zeit, zu der der Mikrocontroller betrieben werden, in die einen internen Bus überwachende Einheit 4. Die auf diese Weise in die einen internen Bus überwachende Einheit 4 geschriebenen Daten werden über die Schnittstelleneinheit 5 für eine externe Kommunikation in die Datenhalteeinheit 1 eingegeben oder nach außen gesendet. Der Test eines von einem Nutzer erzeugten Systems kann einfach ausgeführt werden, indem der Inhalt der von der Datenhalteeinheit 1 gehaltenen Daten oder der Inhalt der nach außen gesendeten Daten gelesen wird. In diesem Fall lässt man die Datenhalteeinheit 1 als Masken-ROM fungieren, und der Test eines vom Nutzer erzeugten Systems kann in der gleichen Umgebung effizient ausgeführt werden wie die Umgebung, in der eine in Masse hergestellte Einrichtung mit dem darauf gebildeten Masken-ROM an der Systemplatine montiert ist.
  • Zusammenfassend kann die Testvorrichtung der grundlegenden Ausführungsform, die auf dem ersten Prinzip der vorliegenden Erfindung basiert, den Programmtest und Systemtest einfach ausführen, während die Einrichtung auf die Platine des vom Nutzer erzeugten Systems montiert ist, indem der sowohl als die Programmtesteinrichtung als auch als die Systemtesteinrichtung dienende Ein-Chip-Mikrocontroller betrieben wird, indem die Signale vom externen ICE etc. verwendet werden, ohne die Programmtesteinrichtung und die Systemtesteinrichtung separat entwickeln zu müssen.
  • 4 ist ein Blockdiagramm, das den Aufbau der grundlegenden Ausführungsform darstellt, die auf dem zweiten Prinzip der vorliegenden Erfindung basiert. Die Testvorrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung ist hier auch in der vereinfachten Form demonstriert.
  • In der Testvorrichtung des Mikrocontrollers in der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, sind die Testeinrichtungen, die den in 3 dargestellten Ein-Chip-Mikrocontroller bilden, eingerichtet (dargestellt als die erste Testeinrichtung 9a-1 und die zweite Testeinrichtung 9a-2 in 4). Eine (zum Beispiel die erste Testeinrichtung 9a-1) der Testeinrichtungen ist mit dem externen ICE verbunden und wird als die Programmtesteinrichtung genutzt. Die andere Testeinrichtung (z. B. die zweite Testeinrichtung 9a-2) wird als die Testeinrichtung für das vom Nutzer erzeugte System verwendet.
  • Wenn die erste und zweite Testeinrichtung im gleichen Fertigungsprozeß hergestellt werden, können sie übrigens auf dem gleichen Chip geschaffen sein.
  • Wie in 4 dargestellt ist, enthält die Testvorrichtung des Mikrocontrollers gemäß der auf dem zweiten Prinzip der vorliegenden Erfindung basierenden grundlegenden Ausführungsform in einer ersten Einrichtung (z. B. der ersten Testeinrichtung 9a-1) die erste wiedereinschreibbare Daten haltende Einheit 1-1 zum Halten beliebiger Daten, eine erste Verarbeitungseinheit 2-1, um die beliebigen Daten durch Betreiben des Mikrocontrollers auf der Basis eines ersten Steuersignals Scc1 zu verarbeiten, eine erste Schnittstelleneinheit 5-1 für eine externe Kommunikation, die die von außen gelieferten Signale Sext empfängt, das erste Steuersignal Scc1 herausnimmt und es an die erste Verarbeitungseinheit 2-1 sendet, und eine einen ersten internen Bus überwachende Einheit 4-1, um einen ersten internen Bus 6-1 zum gegenseitigen Verbinden der Datenhalteeinheit 1-1, der ersten Verarbeitungseinheit 2-1 und der ersten Schnittstelleneinheit 5-1 zur externen Kommunikation zu überwachen.
  • Auf der anderen Seite enthält die Testvorrichtung in der zweiten Einrichtung (z. B. der in 4 dargestellten zweiten Testeinrichtung 9a-2) eine zweite wiedereinschreibbare Daten haltende Einheit 1-2 zum Halten beliebiger Daten, eine zweite Verarbeitungseinheit 2-2, um den Mikrocontroller auf der Basis eines zweiten Steuersignals Scc2 zu betreiben und die beliebigen Daten zu verarbeiten, eine Schnittstelleneinheit 5-2 für eine externe Kommunikation, die die von der ersten Schnittstelleneinheit 5-1 zur externen Kommunikation gelieferten Signale Sse empfängt, das zweite Steuersignal Scc2 herausnimmt und es an die zweite Verarbeitungseinheit 2-2 sendet, und eine einen zweiten internen Bus überwachende Einheit 4-2, um den Zustand eines zweiten internen Busses 6-2 zum gegenseitigen Verbinden der zweiten Datenhalteeinheit 1-2, der zweiten Verarbeitungseinheit 2-2 und der zweiten Schnittstelleneinheit 5-2 für eine externe Kommunikation zu überwachen.
  • Wenn der Programmtest des Mikrocontrollers ausgeführt wird, werden die erste und zweite Einrichtung über die erste und zweite Schnittstelleneinheit 5-1 und 5-2 für eine externe Kommunikation verbunden, Die erste Verarbeitungseinheit 2-1 in der ersten Einrichtung überträgt das von außen gelieferte Signal Sext über die erste Schnittstelleneinheit 5-1 für eine externe Kommunikation zur zweiten Schnittstelleneinheit 5-2 für eine externe Kommunikation. Die zweite Verarbeitungseinheit 2-2 in der zweiten Einrichtung schreibt in die in den zweiten internen Bus überwachende Einheit 4-2 den Zustand des zweiten internen Busses 6-2 zu der Zeit, zu der das Programm für den Programmtest, das in den zur zweiten Schnittstelleneinheit 5-2 für eine externe Kommunikation übertragenen Signalen Sse enthalten ist, ausgeführt wird. Die zweite Verarbeitungseinheit 2-2 gibt die in die einen zweiten internen Bus überwachende Einheit 4-2 geschriebenen Daten in die einen ersten internen Bus überwachende Einheit 4-1 in der ersten Einrichtung oder in die erste Datenhalteeinheit 2-1 über die zweite Schnittstelle 5-2 für eine externe Kommunikation und über die erste Schnittstelleneinheit 5-1 für eine externe Kommunikation ein oder sendet diese Daten nach außen.
  • Wenn auf der anderen Seite der Systemtest des Mikrocontrollers ausgeführt wird, wird die erste Einrichtung von der zweiten Einrichtung getrennt. Die zweite Verarbeitungseinheit 2-2 in der zweiten Einrichtung schreibt in die einen zweiten internen Bus überwachende Einheit 4-2 den Zustand des internen Busses 6-2 zu der Zeit, zu der das Systemtestprogramm, das in dem in die zweite Datenhalteeinheit 1-2 geschriebenen Signal enthalten ist, ausgeführt wird, über die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation und liest die in diese einen zweiten internen Bus überwachende Einheit 4-2 geschriebenen Daten von der zweiten Schnittstelleneinheit 5-2 für eine externe Kommunikation aus.
  • Die erste Einrichtung (zum Beispiel die erste Testeinrichtung 9a-1) enthält eine Speichereinheit 3-1, um das Programm etc. vorübergehend zu speichern, das in den von außen gelieferten Signalen Sext enthalten ist. Die zweite Einrichtung (z. B. die zweite Testeinrichtung 9a-2) enthält eine Speichereinheit 3-2, um das Programm etc. vorübergehend zu speichern, das in den Signalen Sse enthalten ist, die von der ersten Schnittstelleneinheit 5-1 für eine externe Kommunikation in der ersten Einrichtung geliefert werden.
  • In der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, enthält die erste Schnittstelleneinheit 5-1 für eine externe Kommunikation eine erste serielle Schnittstelle zum Verarbeiten von Signalen des seriellen Systems und eine erste parallele Schnittstelle zum Verarbeiten von Signalen des parallelen Systems. Die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation enthält vorzugsweise eine zweite serielle Schnittstelle zum Verarbeiten von Signalen des seriellen Systems und eine zweite parallele Schnittstelle zum Verarbeiten von Signalen des parallelen Systems. Wenn der Programmtest des Mikrocontrollers ausgeführt wird, sind die erste und zweite Einrichtung über die erste und zweite serielle Schnittstelle verbunden, und die von außen gelieferten Signale werden in die erste parallele Schnittstelle eingespeist und über die erste serielle Schnittstelle zur zweiten seriellen Schnittstelle übertragen.
  • In der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, ist eine erste periphere Schaltung zum Verarbeiten der Signale des parallelen Systems, die von der ersten parallelen Schnittstelle in der ersten Seriell/Parallel-Schnittstellenschaltung gesendet werden, vorzugsweise in der ersten Einrichtung angeordnet, und eine zweite periphere Schaltung zum Verarbeiten der Signale des parallelen Systems, die von der parallelen Schnittstelle in der zweiten Seriell/Parallel-Schnittstellenschaltung gesendet werden, ist vorzugsweise in der zweiten Einrichtung angeordnet.
  • In der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, weist zumindest eine der ersten und zweiten peripheren Schaltungen, die oben beschrieben wurden, vorzugsweise eine Schaltung für eine asynchrone/synchrone Kommunikation zum Verarbeiten der Signale in einem asynchronen System auf.
  • In der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, weist zumindest eine der ersten und zweiten peripheren Schaltungen eine asynchrone/synchrone periphere Schaltung auf, die die Signale in einem asynchronen System oder einem Taktsynchronisierungssystem verarbeiten kann.
  • Die grundlegende Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, ist vorzugsweise nicht mit der ersten peripheren Schaltung zum Verarbeiten der Signale des parallelen Systems, die von der ersten parallelen Schnittstelle gesendet werden, und/oder der zweiten peripheren Schaltung zum Verarbeiten der Signale des parallelen Systems ausgestattet, die von der zweiten parallelen Schnittstelle gesendet werden. In diesem Fall werden alle von außen zugeführten Signale über die erste und zweite serielle Schnittstelle übertragen.
  • In der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, weist die erste Datenhalteeinheit 1-1 vorzugsweise einen ersten ROM auf, der die Daten elektrisch wiedereinschreiben kann, und die zweite Datenhalteeinheit 1-2 weist vorzugsweise einen zweiten ROM auf, der die Daten elektrisch wiedereinschreiben kann.
  • Die grundlegende Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, enthält ferner vorzugsweise in der ersten Einrichtung eine erste Schreibschnittstelle auf der Platine mit der Funktion zum Wiedereinschreiben des Inhalts der Daten des ersten ROM unter dem Zustand, in welchem die erste Einrichtung an der ersten Platine (z. B. der ersten Testplatine 9b-1) montiert ist, und enthält in der zweiten Einrichtung eine zweite Schreibschnittstelle auf der Platine mit der Funktion zum Wiedereinschreiben des Inhalts der Daten in dem zweiten ROM in dem Zustand, in welchem die zweite Einrichtung an der zweiten Platine (z. B. der zweiten Testplatine 9b-2) montiert ist.
  • Wenn die Daten, die in die einen ersten internen Bus überwachende Einheit 4-1 geschrieben werden, und/oder die Daten, die in die einen zweiten internen Bus überwachende Einheit 4-2 geschrieben werden, nach außen gesendet werden, sieht die grundlegende Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, vorzugsweise durch die Verwendung eines vorbestimmten Paßwortes eine Sicherheitsfunktion für die Signale, die von außen geliefert werden, vor.
  • Im folgenden wird eine konkretere Erläuterung geliefert. Die erste Testeinrichtung 9a-1 der Testvorrichtung der grundlegenden Ausführungsform, die auf dem zweiten Prinzip basiert, dargestellt in 4, enthält als eingebaute Schaltungselemente die erste Datenhalteeinheit 1-1 wie z. B. einen wiederbeschreibbaren ROM, die erste Verarbeitungseinheit 2-1 wie z. B. eine CPU, die erste Schnittstelleneinheit 5-1 zur externen Kommunikation wie z. B. eine Seri ell/Parallel-Schnittstellenschaltung und die einen ersten internen Bus überwachende Einheit 4-1 wie z. B. einen einen internen Bus überwachenden RAM zum Überwachen des Zustands des ersten internen Busses 6-1. Die zweite Testeinrichtung 9a-2 enthält als die eingebauten Schaltungselemente die zweite Datenhalteeinheit 2-1 wie z. B. einen wiederbeschreibbaren ROM, die zweite Verarbeitungseinheit 2-2 wie z. B. eine CPU, die zweite Speichereinheit 3-3 wie z. B. einen RAM, die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation wie z. B. eine Seriell/Parallel-Schaltung und die einen ersten internen Bus überwachende Einheit 4-1, wie z. B. einen einen internen Bus überwachenden RAM zum Überwachen des Zustands des zweiten internen Busses 6-2.
  • Jede der ersten und zweiten Testeinrichtungen 9a-1 und 9a-2 hat im wesentlichen den gleichen Aufbau wie derjenige der Testeinrichtung 9 (3), die oben beschrieben wurde. In diesem Fall wird es einfach, die Programmentwicklungsumgebung und die Entwicklung für einen Test eines von einem Nutzer erzeugten Systems zu schaffen, wenn zwei Testeinrichtungen, die den Ein-Chip-Mikrocontroller bilden, eingerichtet werden und die erste Testeinrichtung 9a-1 als die Einrichtung für einen Programmtest mit der Schnittstellenfunktion mit dem externen ICE und die zweite Testeinrichtung 9a-1 als die Einrichtung für einen Systemtest verwendet werden. Durch den gleichen Fertigungsprozess hergestellte Einrichtungen können übrigens als die oben beschriebenen ersten und zweiten Testeinrichtungen verwendet werden.
  • Wenn der Programmtest wie z. B. eine Programmfehlersuche und -beseitigung in der Testvorrichtung des Mikrocontrollers mit den oben beschriebenen beiden Testeinrichtungen ausgeführt wird, sind der externe ICE oder dergleichen und die erste Testeinrichtung 9a-1 über die erste Schnittstelleneinheit 5-1 für eine externe Kommunikation verbunden. Ferner sind die erste Testeinrichtung 9a-1 und die zweite Testeinrichtung 9a-2 über die ersten und zweiten Schnittstellen 5-1 und 5-2 für eine externe Kommunikation verbunden.
  • Im oben beschriebenen Aufbau erlangt die erste Schnittstelleneinheit 5-1 für eine externe Kommunikation in der ersten Testeinrichtung 9a-1 Zugriff auf die vom externen ICE etc. gelieferten Signale Sext, nimmt das erste Steuersignal Scc heraus (z. B. ein Befehlssignal des Programms zur Programmfehlersuche und -beseitigung) und überträgt es zu der ersten Verarbeitungseinheit 2-1.
  • Die erste Verarbeitungseinheit 2-1 überträgt die externen Signale Sext von außen über die erste Schnittstelle 5-1 für eine externe Kommunikation auf der Basis des ersten Steuersignals Scc1 zur zweiten Schnittstelleneinheit 5-2 für eine externe Kommunikation in der zweiten Testeinrichtung 9a-2.
  • Diese zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation erlangt Zugriff auf das von der ersten Testeinrichtung 9a-1 übertragene Signal, nimmt das zweite Steuersignal Scc2 heraus und überträgt es zur zweiten Verarbeitungseinheit 2-2. Die zweite Verarbeitungseinheit 2-2 schreibt auf der Basis des zweiten Steuersignals Scc2 das Programm zur Programmfehlersuche und – beseitigung, das im Signal Sse enthalten ist, in die zweite Datenhalteeinheit 1-2 in dem Zustand, in dem die zweite Testeinrichtung 9a-2 an der zweiten Testplatine 9b-2 montiert ist. In diesem Fall wird das Programm für einen Programmtest über die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation oder über eine zweite Schreibschnittstelle auf der Platine (die mit Verweis auf 6 später beschrieben wird) in die zweite Datenhalteeinheit 1-2 geschrieben.
  • Die zweite Verarbeitungseinheit 2-2 liest das in der zweiten Datenhalteeinheit 1-2 gespeicherte Programm seriell und betreibt den Mikrocontroller. Die zweite Verarbeitungseinheit 2-2 schreibt ferner den Zustand des zweiten internen Busses 6-2 zu der Zeit, zu der der Mikrocontroller betrieben wird, seriell in die einen zweiten einen internen Bus überwachende Einheit 4-2. (D. h. die zweite Verarbeitungseinheit 2-2 verfolgt den Zustand des zweiten internen Busses 6-2). Die auf diese Weise in die einen zweiten internen Bus überwachende Einheit 4-2 geschriebenen Daten werden über die zweiten und ersten Schnittstelleneinheiten 5-2 und 5-1 für eine externe Kommunikation in die einen ersten internen Bus überwachende Einheit 4-1 oder in die erste Datenhalteeinheit 1-1 der ersten Testeinrichtung 9a-1 eingegeben oder an den externen ICE etc. gesendet.
  • Der Programmtest, wie z. B. eine Programmfehlersuche und -beseitigung, des Mikrocontrollers kann in der Form einfach ausgeführt werden, in der die Einrichtung an der Platine des vom Nutzer erzeugten Systems montiert ist, wenn der Inhalt der in der einen ersten internen Bus überwachenden Einheit 4-1 oder der ersten Datenhalteinheit 1-1 gehaltenen Daten oder der Inhalt der an den externen ICE etc. gesendeten Daten ausgelesen wird.
  • Wenn der Test eines vom Nutzer erzeugten Systems in der Testvorrichtung des Mikrocontrollers mit den oben beschriebenen beiden Testeinrichtungen ausgeführt wird, werden auf der anderen Seite der externe ICE etc. und die erste Testeinrichtung 9a-1 von der zweiten Testeinrichtung 9a-2 getrennt. Die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation in der zweiten Testeinrichtung 9a-2 verarbeitet die von außen gelieferten Signale, nimmt das zweite Steuersignal Scc2 heraus und überträgt es zur zweiten Verarbeitungseinheit 2-2. Die zweite Verarbeitungseinheit 2-2 schreibt das Programm für einen Systemtest auf der Basis des zweiten Steuersignals Scc2 in die zweite Datenhalteeinheit 1-2, während die zweite Testeinrichtung 9a-2 an der zweiten Testplatine 9b-2 montiert ist. In diesem Fall wird das Programm für den Systemtest über die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation oder die zweite Schreibschnittstelle auf der Platine in die zweite Datenhalteeinheit 1-2 geschrieben.
  • Die zweite Verarbeitungseinheit 2-2 liest das Programm für den Systemtest, das in der zweiten Datenhalteeinheit 1-2 gespeichert ist, seriell aus und betreibt den Mikrocontroller. Die zweite Steuereinheit 2-2 schreibt den Zustand des zweiten internen Busses 6-2 während der Periode, in der der Mikrocontroller betrieben wird, seriell in die einen zweiten internen Bus überwachende Einheit 4-2. Die auf diese Weise in die den zweiten internen Bus überwachende Einheit 4-2 geschriebenen Daten werden über die zweite Schnittstelleneinheit 5-2 für eine externe Kommunikation in die zweite Datenhalteeinheit 1-2 eingegeben oder nach außen gesendet.
  • Der Test eines vom Nutzer erzeugten Systems kann einfach durchgeführt werden, wenn der Inhalt der in der zweiten Datenhalteeinheit 1-2 gehaltenen Daten oder der Inhalt der nach außen gesendeten Daten gelesen wird. In diesem Fall kann der Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung effizient ausgeführt wie in dem Fall, in welchem die in Masse hergestellten Einrichtungen mit dem darauf gebildeten Masken-ROM an der Platine des Systems montiert sind, indem man die zweite Datenhalteeinheit 1 in der zweiten Testeinrichtung 9a-2 als den Masken-ROM in der gleichen Weise wie in dem in 3 gezeigten Fall fungieren lässt.
  • Zusammengefasst kann die Testvorrichtung gemäß der grundlegenden Ausführungsform, die auf dem zweiten Prinzip der vorliegenden Erfindung basiert, den Programmtest und den Systemtest einfach ausführen, während die Einrichtungen auf der Platine für einen Test des vom Nutzer erzeugten Systems montiert sind, indem eine der beiden Testeinrichtungen als die Einrichtung für einen Systemtest auf dem vom Nutzer erzeugen System und die andere als die Einrichtung für einen Programmtest mit der Schnittstellenfunktion mit dem externen ICE verwendet wird, in der gleichen Weise wie in dem in 3 gezeigten Fall.
  • Das Testverfahren des Mikrocontrollers, das ausgeführt wird, indem die Testvorrichtung der grundlegenden Ausführungsform verwendet wird, die auf dem ersten Prinzip der vorliegenden Erfindung basiert, integriert (oder setzt) eine wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten, eine Verarbeitungseinheit zum Verarbeiten der beliebigen Daten, indem ein Mikrocontroller betrieben wird, eine Schnittstelleneinheit für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und zu verarbeiten, und eine einen internen Bus überwachende Einheit, um den Zustand eines internen Busses zu überwachen, in eine Einrichtung (zusammen), schreibt den Zustand des internen Busses zu der Zeit, zu der der Mikrocontroller auf der Basis des aus den von außen gelieferten Signalen herausgenommenen Steuersignals betrieben wird, in die einen internen Bus überwachende Einheit und gibt die in die einen internen Bus überwachende Einheit geschriebenen Daten in die Datenhalteeinheit ein oder sendet sie nach außen.
  • Das Testverfahren eines Mikrocontrollers, das ausgeführt wird, indem die Testvorrichtung der grundlegenden Ausführungsform verwendet, die auf dem zweiten Prinzip der vorliegenden Erfindung basiert, integriert in eine zweite Einrichtung eine erste wiedereinschreibbare Daten haltende Einheit zum Halten beliebiger Daten, eine erste Verarbeitungseinheit, um die beliebigen Daten durch Betreiben eines Mikrocontrollers zu verarbeiten, eine erste Schnittstelleneinheit für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und zu verarbeiten, und eine einen ersten internen Bus überwachende Einheit zum Überwachen des Zustands eines ersten internen Busses, integriert auch in eine zweite Einrichtung eine zweite wiedereinschreibbare Da ten haltende Einheit zum Halten beliebiger Daten, eine zweite Verarbeitungseinheit, um die beliebigen Daten durch Betreiben eines Mikrocontrollers zu verarbeiten, eine zweite Schnittstelleneinheit für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und zu verarbeiten, und eine einen zweiten internen Bus überwachende Einheit, um den Zustand eines zweiten internen Busses zu überwachen, worin, wenn ein Programmtest des Mikrocontrollers ausgeführt wird, das durch die erste Schnittstelleneinheit für eine externe Kommunikation von außen gelieferte Signal zu der zweiten Schnittstelleneinheit für eine externe Kommunikation in der ersten Einrichtung übertragen wird, während der Zustand des zweiten internen Busses zu der Zeit, zu der das Programm für einen Programmtest, das in den zur zweiten Schnittstelleneinheit für eine externe Kommunikation übertragenen Signalen enthalten ist, abgearbeitet wird, in die einen zweiten internen Bus überwachende Einheit in der zweiten Einrichtung geschrieben wird und die in die einen zweiten internen Bus überwachende Einheit geschriebenen Daten über die zweite und erste Schnittstelleneinheit für eine externen Kommunikation in die einen ersten Bus überwachende Einheit oder in die erste Datenhalteeinheit in der ersten Einrichtung geschrieben oder nach außen gesendet werden.
  • Wenn der Systemtest des Mikrocontrollers ausgeführt wird, wird auf der anderen Seite die erste Einrichtung von der zweiten Einrichtung getrennt. In der zweiten Einrichtung wird der Zustand des zweiten internen Busses zu der Zeit, zu der das Programm für einen Systemtest, das in den in die zweite Datenhalteeinheit geschriebenen Signalen enthalten ist, ausgeführt wird, über die zweite Schnittstelleneinheit für eine externe Kommunikation in die einen zweiten internen Bus überwachende Einheit geschrieben, und die in die einen zweiten internen Bus überwachende Einheit geschriebenen Daten werden von der zweiten Schnittstelleneinheit für eine externe Kommunikation ausgelesen.
  • Die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß der grundlegenden Ausführungsform der vorliegenden Erfindung können den Programmtest und dem Systemtest in der Form einfach ausführen, in der die Einrichtung für einen Programmtest und die Einrichtung für einen Systemtest an der Platine des vom Nutzer erzeugten Systems montiert sind. Daher müssen die Einrichtung für einen Programmtest und die Einrichtung für einen Systemtest nicht separat entwickelt werden, sondern sie können innerhalb einer kurzen Zeit entwickelt werden. In diesem Fall können die Einrichtung für einen Programmtest und die Einrichtung für einen Systemtest entwickelt werden, indem nur eine Art der Einrichtungen entwickelt wird, und der Nutzer kann nun einen rechtzeitigen Systementwurf ausführen. Daher trägt die grundlegende Ausführungsform sehr zur Reduzierung der TAT (Turnaround Time) bei. Mit anderen Worten kann diese Ausführungsform die Forderung des Nutzers nach der Entwicklung einer Einrichtung innerhalb einer kurzen Zeit ausreichend erfüllen, wenn der Nutzer den Systementwurf ausführt.
  • Die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß der grundlegenden Ausführungsform der vorliegenden Erfindung können den Programmtest und den Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung effizient ausführen, als ob die in Masse hergestellten Einrichtungen an der Systemplatine montiert sind. Daher kann der Übergang von der Programmentwicklung und der Systementwicklung zur Massenfertigung einfach ausgeführt werden. Insbesondere kann die Massenfertigung von Chips schnell durchgeführt werden, indem ein Flash-Mikrocontroller mit der darin zusammengesetzten Einrichtung für einen Systemtest verwendet wird.
  • 5 ist ein Blockdiagramm, das den Aufbau der ersten bevorzugten Ausführungsform der vorliegenden Erfindung darstellt. Diese Zeichnung zeigt ein konkretes Beispiel des Mikrocontrollers auf der Basis des in 3 dargestellten ersten Prinzips.
  • In 5 wird ein Ein-Chip-Mikrocontroller durch Verwenden einer Testeinrichtung 9 gebildet, und die Testeinrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung ist durch diesen einen Ein-Chip-Mikrocontroller ausgeführt. Die Datenhalteeinheit (3) dieser Erfindung im Ein-Chip-Mikrocontroller weist einen ROM 10 auf, der die Daten elektrisch wiedereinschreiben kann. Ein Flash-ROM wird für diesen ROM 1 vorzugsweise verwendet.
  • In 5 umfasst die Verarbeitungseinheit 2 dieser Erfindung (3) eine CPU 20, um beliebige Daten durch Ausführen des Programms auf der Basis des Steuersignals Scc zu verarbeiten. Die Schnittstelleneinheit 5 für eine externe Kommunikation der vorliegenden Erfindung (3) umfasst eine Seriell/Parallel-Schnittstellenschaltung 50, die eine serielle Schnittstelle 51, um die Signale der seriellen Form zu verarbeiten und sie zu dem ROM 10 und der CPU 20 zu übertragen, und eine parallele Schnittstelle 52 enthält, um die Signale der parallelen Form zu verarbeiten und sie zu dem ROM 10 und der CPU 20 zu übertragen. Adreß/Datensignale Sia, verschiedene Steuersignale und ein Eingangssignal Sic für eine Programmfehlersuche und -beseitigung, die vom externen ICE 90 geliefert werden, werden hier zuerst zur parallelen Schnittstelle 52 übertragen, dann in die Signale der seriellen Form umgewandelt und danach zu dem ROM 10 und der CPU 20 übertragen.
  • In 5 umfasst die Speichereinheit 3 dieser Erfindung (3) einen eingebauten RAM 30 zum vorübergehenden Speichern des Programms etc., das in den von dem externen ICE 90 gelieferten Adreß/Datensignalen Sia enthalten ist. Die Testvorrichtung der ersten bevorzugten Ausführungsform, die in 5 dargestellt ist, ist ferner mit einer peripheren Schaltung 7 (einer Schaltung mit den Funktionen der CPU 20 wie z. B. einem Befehlsregister, einem Befehlsdecodierer und einem Maschinenzykluscodierer) ausgestattet, um die Signale der parallelen Form, die von der parallelen Schnittstelle 52 in der Seriell/Parallel-Schnittstellenschaltung 50 gesendet werden, zu verarbeiten.
  • Die Testvorrichtung gemäß der ersten bevorzugten Ausführungsform, die in 5 dargestellt ist, ist ferner mit einer Schreibschnittstelle 8 auf der Platine ausgestattet, die eine Funktion zum Wiedereinschreiben des Inhalts der Daten in dem ROM 10 aufweist, während die Testeinrichtung 9 an der Platine des vom Nutzer erzeugten Systems montiert ist. Übrigens wird die Funktion dieser Schreibschnittstelle 8 auf der Platine in einigen Fällen als Teil der Seriell/Parallel-Schnittstellenschaltung 5 geschaffen oder vorgesehen.
  • In 5 sind die CPU 20, der eingebaute RAM 30, die Seriell/Parallel-Schnittstellenschaltung 50, die periphere Schaltung 7, der wiederbeschreibbare ROM 10 und die Schreibschnittstelle 8 auf der Platine durch einen Adreßdatenbus 60 miteinander verbunden. Ein einen internen Bus überwachender RAM 40 zum Verfolgen des Zustands des Adreßdatenbusses 60 durch Ausführen des Programms ist in der Testeinrichtung 9 ausgebildet, und dieser einen internen Bus überwachende RAM 40 ist auch mit dem Adreßdatenbus 60 verbunden. Wenn diese CPU 20, der eingebaute RAM 30, die Seriell/Parallel-Schnittstellenschaltung 50, die periphere Schaltung 7, der wiederbeschreibbare ROM 10, die Schreibschnittstelle 8 auf der Platine und der einen internen Bus überwachende RAM 40 innerhalb einer Testeinrichtung 9 ausgebildet sind, ist ein Ein-Chip-Mikrocontroller geschaffen.
  • Wenn auf der Seite des ICE im in 5 gezeigten Aufbau eine Programmfehlersuche und -beseitigung ausgeführt ist, wird die Testvorrichtung unter Verwendung der externen Anschlüsse auf einen Tool-Modus eingestellt. Danach verarbeitet die Seriell-/Parallel-Schnittstellenschaltung 50 die vom ICE 90 zugeführten Signale, nimmt das Steuersignal Scc und das Programm für eine Programmfehlersuche und -beseitigung heraus und überträgt sie zu der CPU 20 und zum eingebauten RAM 30. Die CPU 20 schreibt das Programm für eine Programmfehlersuche und -beseitigung auf der Basis des Steuersignals Scc in den eingebauten RAM 30, liest das in diesem eingebauten RAM 30 gespeicherte Programm seriell aus und betreibt den Mikrocontroller. Überdies verfolgt die CPU 20 den Zustand des Adreßdatenbusses 60 zu der Zeit, zu der der Mikrocontroller betrieben wird, indem die einen internen Bus überwachende Einheit 4 verwendet wird. Die als Folge einer derartigen Trace- oder Verfolgungsoperation in den einen internen Bus überwachenden RAM 40 geschriebenen Daten werden über die serielle Schnittstelle 51 in den wiederbeschreibbaren ROM 10 eingegeben oder über die mit der parallelen Schnittstelle 51 verbundenen Anschlüsse an den ICE 90 gesendet.
  • Eine Programmfehlersuche und -beseitigung des Mikrocontrollers kann einfach ausgeführt werden, während der Inhalt der im ROM 10 gespeicherten oder der Inhalt der an den ICE 90 gesendeten Daten ausgelesen wird.
  • Wenn der Test eines vom Nutzer erzeugten Systems in dem in 5 gezeigten Aufbau ausgeführt wird, wird auf der anderen Seite die Testvorrichtung unter Verwendung der externen Anschlüsse auf den normalen Betriebsmodus eingestellt. Danach verarbeitet die Seriell/Parallel-Schnittstellenschaltung 50 die von außen gelieferten Signale, nimmt das Steuersignal Scc und das Programm für einen Systemtest heraus und überträgt sie zur CPU 20. Die CPU 20 schreibt das Programm für einen Systemtest auf der Basis des Steuersignals Scc in den wiederbeschreibbaren ROM 10 in dem Zustand, in dem die Testeinrichtung 9 an der Testplatine montiert ist. In diesem Fall wird das Programm für einen Systemtest über die Schreibschnittstelle 8 auf der Platine in den ROM 10 ge schrieben. Der eingebaute RAM 30 hat hier allgemein die Funktion eines Flash-Schreibers, und die Schreiboperation des Programms für einen Systemtest in den ROM 10 kann durch Verwenden dieser Flash-Schreiberfunktion einfach vorgenommen werden.
  • Die CPU 20 liest das im ROM 10 gespeicherte Programmtest seriell aus und betreibt den Mikrocontroller. Die CPU 20 verfolgt den Zustand des Adreßdatenbusses 60 zu der Zeit, zu der der Mikrocontroller betrieben wird, indem die einen internen Bus überwachende Einheit 4 verwendet wird. Die als Folge einer solchen Verfolgungsoperation in den einen internen Bus überwachenden RAM 40 geschriebenen Daten werden über die serielle Schnittstelle 51 in den ROM 10 eingegeben oder über die mit der parallelen Schnittstelle 52 verbundenen Anschlüsse an den ICE 90 gesendet.
  • Der Test eines vom Nutzer erzeugten Systems im normalen Betriebsmodus kann einfach ausgeführt werden, während der Inhalt der im ROM 10 gehaltenen Daten oder der Inhalt der an den ICE 90 gesendeten Daten ausgelesen wird. In diesem Fall kann der Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung effizient ausgeführt werden wie in dem Fall, in dem die in Masse hergestellte Einrichtung mit dem darauf gebildeten Masken-ROM auf der Platine des Systems montiert ist, indem man den ROM 10 als Masken-RAM fungieren lässt.
  • Wenn die Testeinrichtung 9 an sich als ein Produkt versandt wird, kann eine andere dritte Person, die vom Programmentwickler verschieden ist, den Inhalt der in den einen internen Bus überwachenden RAM 40 und den ROM 10 geschriebenen Daten einfach auslesen und das Programm decodieren. Um eine solche Möglichkeit zu vermeiden, sind in dem einen internen Bus überwachenden RAM 40 und dem ROM 10 Paßwörter vorgesehen, damit die vom Programmentwickler verschiedene dritte Person die Inhalte des einen internen Bus überwachenden RAM 40 und des ROM 10 nicht auslesen kann. Auf diese Weise ist die Testeinrichtung 9 mit der Sicherheitsfunktion ausgestattet.
  • Wenn die CPU, der ROM und der einen internen Bus überwachende RAM, die in der Testeinrichtung zusammengesetzt sind, in der Testvorrichtung betrieben werden, die vorzugsweise den in 5 gezeigten Aufbau hat, ist das erste Testverfahren des Mikrocontrollers gemäß der vorliegenden Erfindung vorgese hen, das eine Programmfehlersuche und -beseitigung und einen Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung einfach ausführen kann, als ob die in Masse hergestellte Einrichtung an der Systemplatine montiert ist.
  • 6 ist ein Blockdiagramm, das den Aufbau der zweiten bevorzugten Ausführungsform der vorliegenden Erfindung zeigt. Die Zeichnung stellt das erste konkrete Beispiel der Testvorrichtung des Mikrocontrollers der grundlegenden Ausführungsform dar, die auf dem zweiten Prinzip basiert, dargestellt in 4.
  • In 6 sind zwei Einrichtungen (eine Einrichtung 91-1 für einen Programmtest und eine Einrichtung 91-2 für einen Systemtest) eingerichtet, die jeweils im wesentlichen den gleichen Aufbau wie derjenige der in 4 gezeigten Testeinrichtung haben. Die für eine Programmfehlersuche und -beseitigung verwendete Einrichtung für einen Programmtest (d. h. die einem ICE zugeordnete Einrichtung) 91-1 ist an der Platine 92-1 für einen Programmtest montiert, während sie mit dem externen ICE verbunden ist. Die für den Test eines vom Nutzer erzeugten Systems verwendete Einrichtung für einen Systemtest (d. h. eine Zieleinrichtung) 91-2 ist an der Platine 92-2 für einen Systemtest montiert.
  • In 6 umfasst ferner die erste Datenhalteeinheit 1-1 (4) der vorliegenden Erfindung einen ersten ROM 10-1, der die Daten in der Einrichtung für einen Programmtest elektrisch wiedereinschreiben kann, und die zweite Datenhalteeinheit 1-2 (4) der vorliegenden Erfindung umfasst einen zweiten ROM 10-2, der die Daten in der Einrichtung für einen Systemtest elektrisch wiedereinschreiben kann. Jeder von diesen ersten und zweiten ROMs 10-1 und 10-2 nutzt vorzugsweise einen Flash-ROM.
  • Die erste Verarbeitungseinheit 2-1 (siehe 4) der vorliegenden Erfindung, die in 6 dargestellt ist, umfasst eine erste CPU 20-1, um beliebige Daten durch Ausführen des Programms auf der Basis des ersten Steuersignals Scc1 innerhalb der Einrichtung für einen Programmtest zu verarbeiten. Die zweite Verarbeitungseinheit 2-2 (4) der vorliegenden Erfindung umfasst eine zweite CPU 20-2, um beliebige Daten durch Ausführen des Programms auf der Basis des zweiten Steuersignals Scc2 in der Einrichtung von einem Systemtest zu verarbeiten.
  • In der in 6 dargestellten Einrichtung 91-1 für einen Programmtest umfaßt die erste Schnittstelleneinheit 5-1 für eine externe Kommunikation (4) der vorliegenden Erfindung eine erste Seriell/Parallel-Schnittstellenschaltung 50-1, die eine erste serielle Schnittstelle (die in den Zeichnungen manchmal als "SI" abgekürzt wird), die die Signale der seriellen Form verarbeitet und sie zum ersten ROM 10-1, zu der ersten CPU 20-1 und zu der Seriell/Parallel-Schnittstellenschaltung 50-2 in der Einrichtung 91-2 für einen Systemtest überträgt, und eine erste parallele Schnittstelle 52-1 (die manchmal in den Zeichnungen als "PI" abgekürzt wird), die die Signale der parallelen Form verarbeitet und sie zu dem ersten ROM 10-1, zu der ersten CPU 20-1 überträgt usw.
  • Auf der anderen Seite weist die zweite Schnittstelleneinheit für eine externe Kommunikation (4) in der Einrichtung 91-2 für einen Systemtest der vorliegenden Erfindung eine zweite Seriell/Parallel-Schnittstellenschaltung 50-2 auf, die eine zweite serielle Schnittstelle 51-1 enthält, die die von der ersten seriellen Schnittstelle 5-1 etc. gelieferten Signale der seriellen Form verarbeitet und sie zu dem zweiten ROM 10-2 und der zweiten CPU 20-2 überträgt, und eine zweite parallele Schnittstelle 52-2, die die Signale der parallelen Form verarbeitet und sie zu dem zweiten ROM 10-2 und der zweiten CPU 20-2 überträgt.
  • Die von dem externen ICE 90 zugeführten Adreß/Datensignale Sia, die verschiedenen Steuersignale und das Eingangssignal Sic für eine Programmfehlersuche und -beseitigung werden hier zu der ersten parallelen Schnittstelle 52-1 übertragen, dann in die Signale der seriellen Form umgewandelt und zu dem ersten ROM 10-1 und zu der ersten CPU 20-1 übertragen. Die Signale der seriellen Form werden über die erste serielle Schnittstelle 51-1 und die serielle Signalleitung TL zur zweiten seriellen Schnittstelle 51-2 übertragen. Auf der anderen Seite werden die Signale der seriellen Form, die von der zweiten seriellen Schnittstelle 51-2 ausgelesen werden, über die serielle Datenleitung TL zur ersten seriellen Schnittstelle 51-1 übertragen.
  • In der in 6 dargestellten Einrichtung 91-1 für einen Programmtest weist die erste Speichereinheit 3-1 (4) der vorliegenden Erfindung einen ersten eingebauten RAM 30-1 auf, um die Programme etc. vorübergehend zu speichern, die in den von dem externen ICE 90 zugeführten Adreß/Datensignalen Sia enthalten sind. In der in 6 dargestellten Einrichtung 91-1 für einen Programmtest ist eine erste periphere Schaltung 7-1 (eine Schaltung mit der Funktion zum Steuern der Operation der CPU 20-1 wie z. B. ein Befehlsregister, ein Befehlsdecodierer und ein Maschinenzykluscodierer) angeordnet, um die Signale der parallelen Form (z. B. das erste Steuersignal Scc1) zu verarbeiten, die von der ersten parallelen Schnittstelle 52-1 in der ersten Seriell/Parallel-Schnittstellenschaltung 50-1 gesendet werden.
  • In der in 6 dargestellten Einrichtung 91-2 für einen Systemtest weist auf der anderen Seite die zweite Speichereinheit 3-2 (4) der vorliegenden Erfindung einen zweiten eingebauten RAM 30-2 auf, um das Programm vorübergehend zu speichern, das in den von dem externen ICE 90 gelieferten Adreßdatensignalen Sia enthalten ist. In der in 6 gezeigten Einrichtung 91-2 für einen Systemtest ist eine zweite periphere Schaltung 7-2 (eine Schaltung mit den Operationsfunktionen der zweiten CPU 20-2 wie z. B. ein Befehlsregister, ein Befehlsdecodierer und ein Maschinenzykluscodierer) angeordnet, um die Signale der parallelen Form (z. B. das zweite Steuersignal Scc2) zu verarbeiten, die von der zweiten parallelen Schnittstelle 52-2 in der zweiten Seriell/Parallel-Schnittstellenschaltung 50-2 gesendet werden.
  • Die Testvorrichtung gemäß der zweiten Ausführungsform, die in 6 dargestellt ist, enthält ferner eine erste Schreibschnittstelle 8-1 auf der Platine mit der Funktion zum Wiedereinschreiben des Inhalts im ersten ROM 10-1, während die Einrichtung 91-1 für einen Programmtest auf der Seite der Einrichtung für einen Programmtest auf die Platine für einen Programmtest montiert ist. Die Testvorrichtung gemäß der zweiten Ausführungsform, die in 6 gezeigt ist, enthält ferner eine zweite Schreibschnittstelle 8-2 auf der Platine mit der Funktion zum Wiedereinschreiben des Inhalts der Daten im zweiten ROM 10-2, während die Einrichtung 91-2 für einen Systemtest auf die Systemtestplatine auf der Seite der Einrichtung für einen Systemtest montiert ist. Die Funktionen dieser ersten und zweiten Schreibschnittstellen 8-1 und 8-2 auf der Platine werden manchmal als Teil der ersten und zweiten Seriell/Parallel-Schnittstellenschaltung 50-1 bzw. 50-2 erzeugt.
  • In 6 sind über einen ersten Adreßdatenbus 60-1 die erste CPU 20-1, der erste eingebaute RAM 30-1, die erste Seriell/Parallel-Schnittstellenschaltung 50-1, die erste periphere Schaltung 7-1, der wiederbeschreibbare erste ROM 10-1 und die Schreibschnittstelle 8-2 auf der Platine miteinander verbunden. Ein einen ersten internen Bus überwachender RAM 40-1 zum Verfolgen des Zustands des ersten Adreßdatenbusses 60-1 durch Ausführen des Programms ist in der Einrichtung 91-1 für einen Programmtest vorgesehen. Dieser einen internen Bus überwachende RAM 40-1 ist auch mit dem ersten Adreßdatenbus 60-1 verbunden. Ein Ein-Chip-Mikrocontroller wird geschaffen, wenn die erste CPU 20-1, der erste eingebaute RAM 30-1, die erste Seriell/Parallel-Schnittstellenschaltung 50-1, die erste periphere Schaltung 7-1, der wiederbeschreibbare erste ROM 10-1, die erste Schreibschnittstelle 8-1 auf der Platine und der einen ersten internen Bus überwachende RAM 40-1 in der Einrichtung 91-1 für einen Programmtest zusammengesetzt sind.
  • In 6 sind auf der anderen Seite über den zweiten Adreßdatenbus 60-2 die zweite CPU 20-2, der zweite eingebaute RAM 30-2, die zweite Seriell/Parallel-Schnittstellenschaltung 50-2, die zweite periphere Schaltung 7-2, der wiederbeschreibbare zweite ROM 10-2 und die Schreibschnittstelle 8-2 auf der Platine miteinander verbunden. In der Einrichtung 91-2 für einen Systemtest ist ein einen zweiten internen Bus überwachender RAM 40-2 vorgesehen, um den Zustand des zweiten Adreßdatenbusses 60-2 durch Ausführen des Programms zu verfolgen. Dieser einen zweiten internen Bus überwachende RAM 40-2 ist auch mit dem zweiten Adreßdatenbus 60-2 verbunden. Ein anderer Ein-Chip-Mikrocontroller wird geschaffen, wenn die zweite Seriell/Parallel-Schnittstellenschaltung 50-2, die zweite periphere Schaltung 7-2, der wiederbeschreibbare zweite ROM 10-2, die zweite Schreibschnittstelle 8-2 auf der Platine und der einen zweiten internen Bus überwachende RAM 40-2 in der Einrichtung 91-2 für einen Programmtest zusammengesetzt sind.
  • Wenn auf der ICE-Seite in der Testvorrichtung mit den beiden Testeinrichtungen, d. h. der Einrichtung für einen Programmtest und der Einrichtung für einen Systemtest, eine Programmfehlersuche und -beseitigung ausgeführt wird, wird zuerst die Testvorrichtung durch Verwenden der externen Anschlüsse auf den Tool-Modus eingestellt. Der externe ICE 90 und die Einrichtung 91-1 für einen Programmtest werden dann über die erste Seriell/Parallel-Schnittstellenschaltung 50-1 verbunden. Die Einrichtung 91-1 für einen Programmtest und die Einrichtung 91-2 für einen Systemtest werden durch die erste Seriell/Paral lel-Schnittstellenschaltung 50-1 und die zweite Seriell/Parallel-Schnittstellenschaftung 50-2 verbunden.
  • Im oben beschriebenen Aufbau verarbeitet die erste Seriell/Parallel-Schnittstellenschaltung 50-1 in der Einrichtung 91-1 für einen Programmtest die von dem ersten externen ICE 90 gelieferten Signale, nimmt das erste Steuersignal Scc1 und das Programm für eine Programmfehlersuche und -beseitigung heraus und überträgt sie zu der ersten CPU 20 und zu dem ersten eingebauten RAM 30-1. Die erste CPU 20-1 schreibt das Programm für eine Programmfehlersuche und -beseitigung auf der Basis des ersten Steuersignals Scc1 in den ersten eingebauten RAM 30-1. Das im ersten eingebauten RAM 30-1 gespeicherte Programm wird in das Signal Sse der seriellen Form umgewandelt und wird dann über die erste serielle Schnittstelle 51-1 und über die serielle Signalübertragungsleitung TL zur zweiten Seriell/Parallel-Schnittstellenschaltung 50-2 in der Einrichtung 91-1 für einen Programmtest übertragen.
  • Die zweite Seriell/Parallel-Schnittstellenschaltung 50-2 verarbeitet das Signal Sse, das von der Einrichtung 91-1 für einen Programmtest übertragen wurde, nimmt das zweite Steuersignal Scc2 heraus und überträgt es zur zweiten CPU 20-2. Die zweite CPU 20-2 schreibt das Programm für eine Programmfehlersuche und -beseitigung, das in dem Signal Sse enthalten ist, in den zweiten ROM 10-2, während die Einrichtung 91-2 für einen Systemtest an der Platine 92-2 für einen Systemtest montiert ist. In diesem Fall wird das Programm für einen Programmtest über die zweite Seriell/Parallel-Schnittstellenschaltung 50-2 oder über die zweite Schreibschnittstelle 8-2 auf der Platine in den zweiten ROM 10-2 geschrieben.
  • Die zweite CPU 20-2 liest das im zweiten ROM 10-2 gespeicherte Programm seriell aus und betreibt den Mikrocontroller, Die zweite CPU 20-2 verfolgt den Zustand des zweiten Adreßdatenbusses 60-2, während der Mikrocontroller betrieben wird, indem der einen zweiten internen Bus überwachende RAM 40-2 verwendet wird. Als Folge einer derartigen Verfolgungsoperation werden die in den einen zweiten internen Bus überwachenden RAM 40-2 geschriebenen Daten über die zweite und erste Seriell/Parallel-Schnittstellenschaltungen 50-2 und 50-1 in den den ersten internen Bus überwachenden RAM 40-1 oder in den ersten ROM 10-1 innerhalb der Einrichtung 91-1 für einen Programmtest geschrieben oder werden an den externen ICE 90 gesendet.
  • Eine Programmfehlersuche und -beseitigung des Mikrocontrollers kann einfach ausgeführt werden, während die Einrichtung für einen Systemtest an der Platine für einen Test eines vom Nutzer erzeugten Systems montiert ist, wenn der Inhalt der in dem einen ersten internen Bus überwachenden RAM 40-1 oder in dem ersten ROM 10-1 gespeicherten Daten oder der Inhalt der vom externen ICE 90 gesendeten Daten ausgelesen wird, indem die erste serielle Schnittstelle 51-1 der Einrichtung 91-1 für einen Programmtest verwendet wird.
  • Hier wird eine Erläuterung für den Fall gegeben, in welchem die Daten bei einer Programmfehlersuche und -beseitigung durch Verwenden der Anschlüsse ausgelesen werden, die für die zweite serielle Schnittstelle 51-2 der Einrichtung 91-1 für einen Systemtest verwendet werden. In diesem Fall wird das Tool-Steuerregister als der Umschaltteil der zweiten seriellen Schnittstelle 51-2 eingestellt, so dass die ausgegebenen Daten auf andere externe Anschlüsse verteilt werden können. Es ist in diesem Fall notwendig, den Tool-Steueranschluss und den externen Anschluss der Testeinrichtung gemäß dem Wert des Umschaltbits des Anschlusses zu verbinden und somit die Signale durch die externe Karte umzuschalten.
  • Auf der anderen Seite wird, wenn ein Test eines vom Nutzer erzeugten Systems nach einer Programmfehlersuche und -beseitigung in der Testvorrichtung mit den oben beschriebenen beiden Testeinrichtungen ausgeführt wird, die Testvorrichtung unter Verwendung der externen Anschlüsse auf den normalen Betriebsmodus eingestellt. Der externe ICE 90 und die Einrichtung 91-1 für einen Programmtest werden dann von der Einrichtung 91-2 für einen Systemtest getrennt. Die zweite Seriell/Parallel-Schnittstellenschaltung 50-2 in der Einrichtung 91-2 für einen Systemtest verarbeitet die von außen gelieferten Signale, nimmt das zweite Steuersignal Scc2 heraus und überträgt es zur zweiten CPU 20-2. Die zweite CPU 20-2 schreibt auf der Basis des zweiten Steuersignals Scc2 das Programm für einen Systemtest in den zweiten ROM 10-2, während die Einrichtung 91-2 für einen Systemtest an der Systemtestplatine 92-2 montiert ist. In diesem Fall wird das Programm für einen Systemtest über die Seri ell/Parallel-Schnittstellenschaltung 50-2 oder die zweite Schreibschnittstelle 8-2 auf einer Platine in den zweiten ROM 10-2 geschrieben.
  • Der zweite eingebaute ROM 30-2 innerhalb der Einrichtung 91-2 für einen Systemtest hat hier allgemein die Funktion eines Flash-Schreibers. Das Programm für einen Systemtest kann daher durch Ausnutzen dieses Flash-Schreibers leicht in den zweiten ROM 10-2 geschrieben werden.
  • Die zweite CPU 20-2 liest das Programm für einen Systemtest, das in dem zweiten ROM 10-2 gespeichert ist, seriell aus und betreibt den Mikrocontroller. Die zweite CPU 20-2 verfolgt den Zustand des zweiten Adreßdatenbusses 60-2, während der Mikrocontroller betrieben wird, indem der einen zweiten internen Bus überwachende RAM 40-2 genutzt wird. Die so als Folge einer derartigen Verfolgungsoperation in den den zweiten internen Bus überwachenden RAM 40-2 geschriebenen Daten werden über die zweite serielle Schnittstelle 51-1 in den zweiten ROM 10-2 eingegeben oder über den mit der zweiten parallelen Schnittstelle 52-2 verbundenen Anschluß nach außen gesendet.
  • Der Test eines vom Nutzer erzeugten Systems kann einfach ausgeführt werden, indem die beiden Testeinrichtungen verwendet werden, während der Inhalt der in dem zweiten ROM 10-1 gespeicherten Daten oder der Inhalt der nach außen gesendeten Daten ausgelesen und eine Systemfehlersuche und – beseitigung im normalen Betriebsmodus ausgeführt wird. In diesem Fall kann der Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung effizient ausgeführt werden wie in dem Fall, in welchem die in Masse hergestellten Einrichtungen mit dem Masken-ROM an der Systemplatine montiert sind, indem man den zweiten ROM 10-2 in der Systemtesteinrichtung 91-2 als den Masken-ROM fungieren läßt. Das Operationsergebnis des Programms für einen Systemtest ist in diesem Fall im zweiten ROM 10-2 gespeichert, und wenn die Daten des zweiten ROM 10-2 unter Verwendung der zweiten parallelen Schnittstelle 52-2 ausgelesen werden, kann das System mit dem daran montierten Mikrocontroller getestet werden. Ein Test der Spannungspegel der Anschlüsse des Mikrocontrollers, ein Test des Anfangszustandes des Systems usw. können in diesem Fall durch Nutzen des Programms für einen Systemtest ausgeführt werden.
  • Wenn die Einrichtung für einen Programmtest und die Einrichtungen für einen Systemtest als Produkte wie sie sind verschickt werden, nachdem im normalen Betriebsmodus eine Systemfehlersuche und -beseitigung ausgeführt ist, könnte eine vom Programmentwickler verschiedene andere dritte Person den Inhalt der in den einen internen Bus überwachenden RAM und den ROM geschriebenen Daten einfach auslesen und das Programm decodieren. Um eine solche Möglichkeit zu vermeiden, werden an den einen internen Bus überwachenden RAM und den ROM in der gleichen Weise wie in der ersten bevorzugten Ausführungsform (5) Paßworte vergeben, damit die vom Programmentwickler verschiedene dritte Person den Inhalt des einen internen Bus überwachenden RAM und des ROM nicht auslesen kann. Auf diese Weise sind die Einrichtung für einen Programmtest und die Einrichtung für einen Systemtest mit der Sicherheitsfunktion ausgestattet.
  • Das zweite Testverfahren eines Mikrocontrollers gemäß der vorliegenden Erfindung verwendet vorzugsweise die Testvorrichtung mit dem in 6 gezeigten Aufbau, betreibt die CPU, den ROM und den einen internen Bus überwachenden RAM, die in jeder der Programmtesteinrichtung (einem ICE zugeordneten Einrichtung) und der Systemtesteinrichtung zusammengesetzt sind, und überträgt die Signale zwischen dem ICE und den beiden Einrichtungen über die seriellen Schnittstellen. Auf diese Weise kann das zweite Testverfahren der vorliegenden Erfindung eine effiziente Programmfehlersuche und -beseitigung und einen Test des vom Nutzer erzeugten Systems in der gleichen Umgebung einfach ausführen, als ob die in Masse hergestellten Einrichtungen an der Systemplatine montiert sind.
  • 7 ist ein Blockdiagramm, das eine verbesserte Form der in 6 dargestellten Ausführungsform zeigt. 8 zeigt ein Blockdiagramm, das den Aufbau zum Ausführen eines erneuten Tests der Einrichtung darstellt, nachdem sie an der Systemtestplatine montiert ist, indem die in 7 dargestellte Einrichtung für einen Programmtest verwendet wird. Die Zeichnungen zeigen die verbesserte Form der Testvorrichtung des Mikrocontrollers gemäß der zweiten bevorzugten Ausführungsform, die in 6 dargestellt ist.
  • In 7 sind die in 6 dargestellten beiden Testeinrichtungen (d. h. die Einrichtung 91-1 für einen Programmtest und die Einrichtung 91-2 für einen Systemtest) im gleichen Fertigungsprozeß hergestellt und durch den gleichen Chip ausgeführt. In 7 ist, während die Einrichtung 91-1 für einen Pro grammtest, die für eine Programmfehlersuche und -beseitigung genutzt wird, mit dem externen ICE verbunden ist; sie an der Programmtestplatine 92-2 montiert. Zur gleichen Zeit ist die auch für einen Test eines vom Nutzer erzeugten Systems verwendete Einrichtung 91-1 für einen Programmtest an der Systemtestplatine 92-2 montiert.
  • Mit anderen Worten ist die Testvorrichtung des Mikrocontrollers, die in 7 dargestellt ist, von der in 6 dargestellten Ausführungsform insofern verschieden, als die Einrichtung für einen Systemtest (d. h. die Einrichtung für einen Programmtest), die im gleichen Fertigungsprozeß wie die Programmtesteinrichtung zur Programmfehlersuche und -beseitigung hergestellt ist, auch für einen Test des vom Nutzer erzeugten Systems verwendet wird. Es sollte hierbei besonders erwähnt werden, daß die Operationen für eine Programmfehlersuche und -beseitigung und einen Test eines vom Nutzer erzeugten Systems unter Verwendung einer solchen Programmtesteinrichtung 91-1 (hierbei die "Testeinrichtung" genannt) im Wesentlichen die gleichen wie die Operationen der in 6 dargestellten Ausführungsform sind.
  • Eine Erläuterung in weiteren Einzelheiten wird geliefert. In 7 umfaßt jede der ersten und zweiten Datenhalteeinheiten 1-1 und 1-2 (4) einen ersten ROM 10-1, der die Daten elektrisch wiedereinschreiben kann. Jede der ersten und zweiten Verarbeitungseinheiten 2-1 und 2-2 (4) umfaßt eine erste CPU 20-1, die das Programm auf der Basis des ersten Steuersignals Scc1 abarbeitet oder ausführt und beliebige Daten verarbeitet.
  • In 7 weist jede der ersten und zweiten Schnittstelleneinheiten 5-1 und 5-2 für eine externe Kommunikation (4) eine erste Seriell/Parallel-Schnittstellenschaltung 50-1 auf, die eine erste serielle Schnittstelle 51-1 enthält, um die Signale der seriellen Form zu verarbeiten und sie zum ersten ROM 10-1, der ersten CPU 20-1 und der Seriell/Parallel-Schnittstellenschaltung 50-1 in der anderen Testeinrichtung zu übertragen, und eine erste parallele Schnittstelle 52-1, um die Signale der parallelen Form zu verarbeiten und sie zu dem ersten ROM 10-1 und der ersten CPU 20-1 zu übertragen.
  • Die vom externen ICE 90 gelieferten Adreß/Datensignale Sia, die verschiedenen Steuersignale und das Eingangssignal Sic für eine Programmfehlersuche und -beseitigung werden zu der ersten parallelen Schnittstelle 52-1 in einer der Testeinrichtungen übertragen, werden dann in die Signale der seriellen Form umgewandelt und werden danach zu dem ersten ROM 10-1 und der ersten CPU 20-1 übertragen. Die Signale der seriellen Form werden ferner zu der ersten seriellen Schnittstelle 51-1 in einer der Testeinrichtungen über die serielle Schnittstelle 51-1 in einer der Testeinrichtungen und über die serielle Signalleitung TL übertragen. Auf der anderen Seite werden die Signale der seriellen Form, die aus der ersten seriellen Schnittstelle 51-1 in der anderen Testeinrichtung ausgelesen wurden, zu der ersten seriellen Schnittstelle 51-1 in einer der Testeinrichtungen über die serielle Signalleitung TL übertragen.
  • Ferner umfaßt in 7 jede der ersten und zweiten Speichereinheiten 3-1 und 3-2 (4) der vorliegenden Erfindung einen ersten eingebauten RAM 30-1 zum vorübergehenden Speichern des Programms etc., das in den von dem externen ICE 90 gelieferten Adreß/Datensignalen Sia enthalten ist. Eine erste periphere Schaltung 7-1 ist ferner angeordnet, um die Signale der parallelen Form (z. B. das erste Steuersignal Scc1) zu verarbeiten, die von der ersten parallelen Schnittstelle 52-1 in der ersten Seriell/Parallel-Schnittstellenschaltung 50-1 gesendet werden.
  • Die Testvorrichtung des Mikrocontrollers, dargestellt in 7, ist mit einer ersten Schreibschnittstelle 8-1 auf der Platine mit einer Funktion zum Wiedereinschreiben des Inhalts der Daten in dem ersten ROM 10-1 ausgestattet, während die Testeinrichtung an der Platine 92-1 für einen Programmtest montiert ist. Die Testvorrichtung ist mit einer ersten Schreibschnittstelle 8-1 auf der Platine ausgestattet, die eine Funktion zum Wiedereinschreiben des Inhalts der Daten im ersten ROM 10-1 aufweist, während die Testeinrichtung an der Systemtestplatine 92-2 montiert ist.
  • In 7 können zwei Ein-Chip-Mikrocontroller vorgesehen sein, wenn die erste CPU 20-1, der erste eingebaute RAM 30-1, die erste Seriell/Parallel-Schnittstellenschaltung 50-1, die erste periphere Schaltung 7-1, der wiederbeschreibbare erste ROM 10-1, die erste Schreibschnittstelle 8-1 auf der Platine und der einen ersten internen Bus überwachende RAM 40-1 in dem durch den gleichen Chip hergestellten beiden Testeinrichtungen zusammengesetzt sind.
  • Wenn eine Programmfehlersuche und -beseitigung auf der ICE-Seite in der Testvorrichtung mit einer Art der oben beschriebenen Testeinrichtungen ausgeführt wird, wird die Testvorrichtung durch Verwenden der externen Anschlüsse auf den Tool-Modus eingestellt. Der externe ICE 90 und die Programmtesteinrichtung 91-1 werden über die erste Seriell/Parallel-Schnittstellenschaltung 50 verbunden. Überdies werden die beiden Programmtesteinrichtungen 91-1 über die beiden ersten Seriell/Parallel-Schnittstellenschaltungen 50-1 miteinander verbunden.
  • Im oben beschriebenen Aufbau verarbeitet die erste Seriell/Parallel-Schnittstellenschaltung 50-1 in einer der Testeinrichtungen die von dem externen ICE 90 gelieferten Signale, nimmt das erste Steuersignal Scc1 und das Programm für eine Programmfehlersuche und -beseitigung heraus und überträgt sie zu der ersten CPU 20-1 und zu dem ersten eingebauten RAM 30-1. Die erste CPU 20-1 schreibt das Programm für eine Programmfehlersuche und -beseitigung auf der Basis des ersten Steuersignals Scc1 in den ersten eingebauten RAM 30-1. Das somit im ersten eingebauten RAM 30-1 gespeicherte Programm wird in die Signale Sse der seriellen Form umgewandelt und dann über die erste serielle Schnittstelle 51-1 und die serielle Signalübertragungsleitung TL zu der ersten Seriell/Parallel-Schnittstellenschaltung 50-1 in der anderen Testeinrichtung übertragen.
  • Die erste Seriell/Parallel-Schnittstellenschaltung 50-1 in der anderen Testeinrichtung verarbeitet die Signale Sse, nimmt das erste Steuersignal Scc1 heraus und überträgt es zur ersten CPU 20-1. Die erste CPU 20-1 schreibt das Programm für eine Programmfehlersuche und -beseitigung, das in den Signalen Sse enthalten ist, in den ersten ROM 10-1, während die andere Testeinrichtung an der Systemtestplatine 92-2 montiert ist. In diesem Fall wird das Programm für eine Programmfehlersuche und -beseitigung über die erste Seriell/Parallel-Schnittstellenschaltung 50-1 in der anderen Testeinrichtung oder über die erste Schreibschnittstelle 8-1 auf der Platine in den ersten ROM 10-1 geschrieben.
  • Die erste CPU 20-1 in der anderen Testeinrichtung liest das im ersten ROM 10-1 gespeicherte Programm seriell aus und betreibt den Mikrocontroller. Die erste CPU 20-1 verfolgt den Zustand des ersten Adreßdatenbusses 60-1 zu der Zeit, zu der der Mikrocontroller betrieben wird, indem der einen ersten internen Bus überwachende RAM 40-1 genutzt wird. Die Daten, die als Folge einer solchen Verfolgungsoperation in den einen ersten internen Bus überwachenden RAM 40-1 in der anderen Testeinrichtung geschrieben werden, werden über die beiden ersten Seriell/Parallel-Schnittstellenschaltungen 50-1 in den einen ersten internen Bus überwachenden RAM 40-1 oder in den ersten ROM 10-1 in einer der Testeinrichtungen eingegeben oder an den externen ICE 90 gesendet.
  • Eine Programmfehlersuche und -beseitigung des Mikrocontrollers kann in der Form einfach ausgeführt werden, in der die Testeinrichtung an der Platine für einen Test eines vom Nutzer erzeugten Systems montiert ist, wenn der Inhalt der in dem einen ersten internen Bus überwachenden RAM 40-1 oder in dem ersten ROM 10-1 gehaltenen Daten oder der Inhalt der an den externen ICE 90 gesendeten Daten durch Verwenden der ersten seriellen Schnittstelle 51-1 in einer der Testeinrichtungen ausgelesen wird.
  • Hiermit wird eine Erläuterung für den Fall gegeben, in welchem die Daten, die sich auf eine Programmfehlersuche und -beseitigung beziehen, unter Verwendung der Anschlüsse ausgelesen werden, die für die erste serielle Schnittstelle 51-1 in der anderen Testeinrichtung genutzt werden. In diesem Fall wird das Tool-Steuerregister als der Umschaltteil der ersten seriellen Schnittstelle 51-1 in der anderen Testeinrichtung so eingestellt, daß die ausgegebenen Daten auf die anderen externen Anschlüsse verteilt werden können. Zu dieser Zeit ist es notwendig, die Signale durch die externe Platine durch Verbinden des Tool-Steueranschlusses und anderer externer Anschlüsse gemäß den Werten der Umschaltbits der Anschlüsse umzuschalten.
  • Wenn auf der anderen Seite ein Test eines vom Nutzer erzeugten Systems nach einer Programmfehlersuche und -beseitigung in der Testvorrichtung mit den beiden Testeinrichtungen ausgeführt wird, die aus dem gleichen Chip gebildet sind, wird die Testvorrichtung unter Verwendung der externen Anschlüsse auf den normalen Betriebsmodus eingestellt. Der externe ICE 90 und eine der Testeinrichtungen werden dann von der anderen Testeinrichtung getrennt. Die erste Seriell/Parallel-Schnittstellenschaltung 50-1 in der anderen Testeinrichtung verarbeitet die von außen gelieferten Signale, nimmt das erste Steuersignal Scc1 heraus und überträgt es zur ersten CPU 20-1. Die erste CPU 20-1 schreibt das Systemtestprogramm auf der Basis des ersten Steuersignals Scc1 in den ersten ROM 10-1, während die andere Testeinrichtung an der Systemtestplatine 92-2 montiert ist. Der erste eingebaute ROM 30-1 hat hier die Funktion des Flash-Schreibers, wie schon beschrieben wurde, und kann das Systemtestprogramm einfach in dem ersten ROM 10-1 schreiben, indem diese Flash-Schreiberfunktion genutzt wird.
  • Die erste CPU 20-1 liest das in dem ersten ROM 10-1 gespeicherte Systemtestprogramm seriell aus und betreibt den Mikrocontroller. Die erste CPU 20-2 verfolgt den Zustand des ersten Adreßdatenbusses 60-1 zu der Zeit, zu der der Mikrocontroller betrieben wird, indem der einen ersten internen Bus überwachende RAM 40-1 genutzt wird. Die Daten, die als Ergebnis einer derartigen Verfolgungsoperation in den einen ersten internen Bus überwachenden RAM 40-1 geschrieben werden, werden über die erste serielle Schnittstelle 51-1 in den ersten ROM 10-1 eingegeben oder werden über die mit der ersten parallelen Schnittstelle 52-1 verbundenen Anschlüsse nach außen gesendet.
  • Ein Test eines vom Nutzer erzeugten Systems kann einfach ausgeführt werden, wenn der Inhalt der in dem ersten ROM 10-1 gespeicherten Daten oder der Inhalt der nach außen gesendeten Daten ausgelesen und eine Systemfehlersuche und -beseitigung im normalen Betriebsmodus ausgeführt wird. In diesem Fall kann ein Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung effizient ausgeführt werden, als ob die in Masse hergestellten Einrichtungen mit dem darauf ausgebildeten Masken-ROM an der Systemplatine montiert sind, indem man den ersten ROM 10-1 innerhalb der Testeinrichtung als den Masken-ROM fungieren läßt. Das System, an dem der Mikrocontroller montiert ist, kann getestet werden, wenn das Operationsergebnis des Systemtestprogramms in diesem Fall in dem ersten ROM 10-1 gespeichert wird und die Daten des ersten ROM 10-1 durch Verwenden der ersten parallelen Schnittstelle 52-1 ausgelesen werden.
  • Im folgenden wird eine konkretere Erläuterung gegeben. Wenn der Mikrocontroller auf der Zielplatine für einen Test eines vom Nutzer erzeugten Systems getrennt betrieben wird, wird das Programm für einen Systemtest in den Flash-Mikrocontroller geschrieben, der den Flash-Schreiber enthält, und dieser Flash-Mikrocontroller wird als die Testeinrichtung betrieben. In diesem Fall wird das Programm für einen Systemtest unter Verwendung der parallelen Schnittstelle in diesem Flash-Mikrocontroller ausgelesen. Folglich kann der Mikrocon troller ohne Verbinden des ICE und der ICE-Platine mit der Seriell/Parallel-Schnittstellenschaltung betrieben werden.
  • Wenn bestätigt wird, daß die Testeinrichtung wie z. B. ein Flash-Mikrocontroller nicht normal arbeitet, nachdem sie als Produkt verschickt ist, kann ein erneuter Test des Programms sowie der Zielplatine des Nutzers einfach ausgeführt werden, während die Testeinrichtung an der in 8 gezeigten Zielplatine 99 des Nutzers montiert ist. Um die Testeinrichtung nach einem Versand als das Produkt von der Testeinrichtung vor einem Versand klar zu unterscheiden, wird übrigens auf die Testeinrichtung in dem Zustand, in dem sie an der Zielplatine des Nutzers montiert ist, als die "Einrichtung 91-3 für einen Test eines Nutzersystems" verwiesen.
  • Selbstverständlich hat die in 8 gezeigte Einrichtung 91-3 für einen Test eines vom Nutzer erzeugten Systems den gleichen Aufbau wie der der oben erwähnten Programmtesteinrichtung 91-1. Genauer gesagt haben der ROM 10-3 des Nutzers und die CPU 20-3 des Nutzers in der Einrichtung 91-3 für einen Test eines vom Nutzer erzeugten Systems die gleiche Funktion wie der erste ROM 10-1 bzw. die erste CPU 20-2 in der Programmtesteinrichtung 91-1. Die Seriell/Parallel-Schnittstellenschaltung 50-3 eines Nutzers, die die serielle Schnittstelle 51-3 eines Nutzers und die parallele Schnittstelle 52-3 eines Nutzers enthält, hat die gleiche Funktion wie die erste Seriell/Parallel-Schnittstellenschaltung 50-1, die die erste serielle Schnittstelle 51-1 bzw. die erste parallele Schnittstelle 52-1 in der Programmtesteinrichtung 91-1 enthält.
  • Der eingebaute RAM 30-3 des Nutzers, die periphere Schaltung 7-3 des Nutzers, die Schreibschnittstelle 8-3 auf der Platine des Nutzers und der einen internen Bus überwachende RAM 40-3 eines Nutzers in der Einrichtung 91-3 für einen Test eines Nutzersystems haben die gleiche Funktion wie der erste eingebaute RAM 30-1, die erste periphere Schaltung 7-1, die erste Schreibschnittstelle 8-1 auf der Platine bzw. der einen ersten internen Bus überwachende RAM 40-1 in der Programmtesteinrichtung 91-1.
  • Eine Erläuterung in weiteren Einzelheiten wird geliefert. In 8 sind die Anschlüsse, die als die Schnittstelle mit der ICE-Platine dienen (hier die Anschlüsse der ersten seriellen Schnittstelle 51-1 in der Programmtesteinrichtung 91-1) übrig, nachdem das Produkt, das durch Montieren der Testeinrichtung wie z. B. des Flash-Mikrocontrollers an die Zielplatine des Nutzers erhalten wird, als das Produkt versandt ist. Wenn nach dem Versand sich im Produkt irgendeine Störung entwickelt, ermöglicht diese Anordnung, das Nutzerprogramm und die Zielplatine 99 des Nutzers noch einmal zu bewerten, indem die Anschlüsse der ersten seriellen Schnittstelle 51-1 mit den Anschlüssen der seriellen Schnittstelle 51-3 des Nutzers verbunden und die Signale Sse von der Programmtesteinrichtung 91-3 an die Zielplatine 99 des Nutzers geliefert werden. Wenn ein ROM, der die Daten wiedereinschreiben kann (wie z. B. der ROM 10-3 eines Nutzers) verwendet wird, kann grundsätzlich ein Test des Nutzerprogramms und der Zielplatine des Nutzers beliebig oft ausgeführt werden.
  • 9 ist ein Blockdiagramm, das die Beziehung zwischen der parallelen Schnittstelle und anderen Bestandteilelementen zeigt, die in der Ausführungsform der vorliegenden Erfindung verwendet werden. Die Zeichnung zeigt jedoch die Beziehung zwischen der parallelen Schnittstelle und Bestandteilelementen, die in der in 5 gezeigten ersten bevorzugten Ausführungsform verwendet werden.
  • Die Signale der parallelen Form, die von dem externen ICE 90 (5) an die parallele Schnittstelle 52 in der Testeinrichtung geliefert werden, enthalten die Adreß/Datensignale Sia, die sich auf das Programm beziehen, verschiedene Steuersignale und das Eingangssignal für eine Programmfehlersuche und -beseitigung, wie in 9 gezeigt ist. Die parallele Schnittstelle 52 verarbeitet hier die Signale der parallelen Form vom externen ICE 90, nimmt das Steuersignal Scc für die CPU heraus und sendet es an die CPU 20, ohne es durch den Adreßdatenbus 60 zu leiten.
  • Das Steuersignal Scc für die CPU wird vorzugsweise an die periphere Schaltung 7 (5) mit der peripheren Funktion zum Steuern der Operation der CPU 20 übertragen und von ihr geeignet verarbeitet und dann an die CPU 20 geliefert. Je nach den Typen ist jedoch die Testeinrichtung nicht mit der peripheren Schaltung zum Verarbeiten der Signale der parallelen Form ausgestattet, die von der parallelen Schnittstelle 52 gesendet werden. In solch einem Fall sind alle von dem externen ICE 90 zugeführten Signale die Signale der seriellen Form, und diese Signale der seriellen Form werden über die serielle Schnittstelle 51 (5) übertragen.
  • Auf der anderen Seite werden die Daten, die als Folge der Verfolgungsoperation des Adreßdatenbusses 60 in den einen internen Bus überwachenden RAM 40 zu der Zeit geschrieben werden, zu der das Programm für eine Programmfehlersuche und -beseitigung oder das Programm für einen Systemtest ausgeführt wird, über die mit der parallelen Schnittstelle 52 verbundenen Anschlüsse nach außen gesendet. Mit anderen Worten können die Programmfehlersuche und -beseitigung und der Test eines vom Nutzer erzeugten Systems effizient ausgeführt werden, während die Daten in dem einen internen Bus überwachenden RAM von der parallelen Schnittstelle 52 ausgelesen werden.
  • Die von dem Steuersignal Scc verschiedenen Signale, die vom externen ICE geliefert werden, werden von der parallelen Schnittstelle 52 zur seriellen Schnittstelle 51 übertragen, werden in die Signale der seriellen Form umgewandelt und werden dann zu der CPU 20 und dem wiederbeschreibbaren ROM 10 übertragen.
  • 10 ist ein Blockdiagramm, das den Aufbau zeigt, in welchem die Anschlüsse der seriellen/parallelen Schnittstelle, die in dieser Ausführungsform verwendet werden, auch als die Anschlüsse der Mehrzweckports verwendet werden. Diese Zeichnung zeigt jedoch den Aufbau der Anschlüsse der seriellen/parallelen Schnittstelle, die in der in 5 dargestellten ersten bevorzugten Ausführungsform verwendet werden.
  • In 10 behandeln oder verarbeiten die Anschlüsse der seriellen Schnittstelle 51 und der parallelen Schnittstelle 52 in der seriellen/parallelen Schnittstelle 50 auch die Signale, die für die Mehrzweckports 52 und 54 verwendet werden.
  • In 10 schaltet ein Selektor 55 zum Auswählen der Anschlüsse für einen kombinierten Gebrauch selektiv um und verbindet die Anschlüsse der seriellen Schnittstelle 51 und die Anschlüsse, die die Signale behandeln, die für den Mehrzweckport 53 genutzt werden, bezüglich des externen Anschlusses TE der Testeinrichtung 9. Ähnlich schaltet ein Sektor 56 zum Auswählen der Anschlüsse für kombinierten Gebrauch selektiv um und verbindet die Anschlüsse der parallelen Schnittstelle 52 und die Anschlüsse, die die Signale behandeln, die für den Mehrzweckport 54 genutzt werden, bezüglich des externen Anschlusses TE der Testeinrichtung 9.
  • Gemäß diesem Aufbau kann die Seriell/Parallel-Schnittstellenschaltung als die Mehrzweckports genutzt werden, wenn sie nicht als die serielle Schnittstelle und die parallele Schnittstelle genutzt wird. Daher kann die Schnittstellenschaltung in der Einrichtung effektiv genutzt werden, wenn die Einrichtung als die diskrete Einrichtung ohne Einrichten der Schnittstelle zwischen der Testeinrichtung und dem ICE genutzt wird. Übrigens können die Eingangs/Ausgangsanschlüsse der peripheren Anschlüsse der peripheren Schaltung und die Anschlüsse von jeder der seriellen Schnittstelle und der parallelen Schnittstelle anstelle der Anschlüsse, die die für die Mehrzweckports 53 und 54 verwendeten Signale behandeln, gemeinsam genutzt werden.
  • In 10 können die Anschlüsse zu den Anschlüssen umgeschaltet werden, die die Signale behandeln, die für die Mehrzweckports genutzt werden, oder zu den Eingangs/Ausgangsanschlüssen der peripheren Schaltung, indem der Selektor gemäß den Umschaltsteuersignalen von außen betätigt wird, während der Periode, in der sowohl die serielle Schnittstelle als auch die parallele Schnittstelle genutzt werden.
  • 11 ist ein Blockdiagramm, das den Aufbau zeigt, in welchem die Anschlüsse der seriellen Schnittstelle, die für die Ausführungsformen der vorliegenden Erfindung genutzt werden, geändert werden können. Diese Zeichnung zeigt jedoch den Aufbau der Anschlüsse der seriellen Schnittstelle, die für die erste bevorzugte Ausführungsform etc. der vorliegenden Erfindung genutzt werden, die in 5 dargestellt ist.
  • In 11 ist ein Selektor 57 zum Umschalten mehrerer Anschlüsse dargestellt, der getrennt von dem Selektor zum Auswählen der oben beschriebenen Anschlüsse für kombinierten Gebrauch angeordnet ist. Wenn dieser Selektor 57 betätigt wird, werden die Anschlüsse der seriellen Schnittstelle 51 zu den Positionen mehrerer externen Anschlüsse der Testeinrichtung (beispielsweise des ersten externen Anschlusses TE-1 und des zweiten externen Anschlusses TE-2, die in 11 dargestellt sind) umgeschaltet. Mit anderen Worten sind in diesem Fall die Positionen der Anschlüsse der seriellen Schnittstelle nicht fixiert.
  • Wenn ein Test eines vom Nutzer erzeugten Systems in diesem Aufbau aufgeführt wird, wird das Programm in den eingebauten ROM in der Systemtesteinrichtung auf der Systemtestplatine (d. h. auf der Zielplatine) geschrieben. Wenn dieses Programm auf der Systemeinrichtung als eine einzelne Einrichtung ausgeführt wird, werden die Positionen der Anschlüsse der seriellen Schnittstelle zum Übertragen der Information unter Überwachung des internen Busses umgeschaltet, indem der Selektor betätigt wird, und ein Test der Systemtestplatine kann für alle Anschlüsse ausgeführt werden.
  • 12 ist ein Blockdiagramm, dass den Aufbau der dritten bevorzugten Ausführungsform der vorliegenden Erfindung zeigt. Die Zeichnung stellt das zweite konkrete Beispiel der Testvorrichtung des Mikrocontrollers gemäß der grundlegenden Ausführungsform dar, die auf dem in 4 gezeigten Prinzip basiert.
  • In der zweiten bevorzugten Ausführungsform (6), die oben beschrieben wurde, ist die Programmtesteinrichtung 91-1 mit der ersten peripheren Schaltung 7-1 zum Verarbeiten der Signale in dem Taktsynchronisierungssystem versehen. Die Systemtesteinrichtung 91-2 ist mit der zweiten peripheren Schaltung 7-2 zum Verarbeiten der Signale im Taktsynchronisierungssystem versehen. Mit anderen Worten weisen in der zweiten bevorzugten Ausführungsform sowohl die Programmtesteinrichtung 91-1 als auch die Systemtesteinrichtung 91-2 die eingebauten peripheren Schaltungen für eine synchrone Kommunikation auf, die jeweils bei einem gemeinsamen Takt arbeiten. In einem solchen Aufbau wird die Signalübertragung zwischen der Programmtesteinrichtung 91-1 und der Systemtesteinrichtung 91-2 über serielle Signalübertragungsleitungen TL mit zwei Leitungen zum Übertragen der Adreß/Datensignale und des gemeinsamen Taktes ausgeführt.
  • Im Gegensatz dazu ist in der dritten bevorzugten Ausführungsform der vorliegenden Erfindung, die in 12 dargestellt ist, die Programmtesteinrichtung 93-1 mit einer peripheren Schaltung 70-1 für eine asynchrone Kommunikation versehen, und die Systemtesteinrichtung 93-2 ist mit einer peripheren Schaltung 70-2 für eine asynchrone Kommunikation versehen. Mit anderen Worten enthält in dieser dritten bevorzugten Ausführungsform jede der Programmtesteinrichtung 93-1 und der Systemtesteinrichtung 93-2 nur die periphere Schaltung für eine asynchrone Kommunikation zum Verarbeiten der Signale im asynchronen System im Gegensatz zur oben beschriebenen zweiten bevorzugten Ausführungsform. Ein typisches Beispiel einer solchen peripheren Schaltung für eine asynchrone Kommunikation ist ein UART (Universal Asynchronous Receiver-Transmitter).
  • Die von den peripheren Schaltungen in sowohl der Testeinrichtung als auch der Systemtesteinrichtung verschiedenen Bestandteilelemente sind die gleichen wie diejenigen der in 6 gezeigten zweiten bevorzugten Ausführungsform. Daher wird hiermit eine detaillierte Erläuterung derartiger Bestandteileelemente weggelassen.
  • In der oben beschriebenen dritten bevorzugten Ausführungsform arbeiten verschiedene Bestandteilelemente einschließlich der peripheren Schaltung 70-1 für eine asynchrone Konfiguration in der Programmtesteinrichtung 93-1 auf der Basis des ersten internen Taktes CLK1. Auf der anderen Seite arbeiten verschiedene Bestandteilelemente einschließlich der peripheren Schaltung 70-2 für eine asynchrone Kommunikation in der Systemtesteinrichtung 93-2 auf der Basis des zweiten internen Taktes CLK2. In diesem Fall wird das Signal Sse im stemtesteinrichtung 93-2 über die seriellen Signalübertragungsleitungen TL zum Übertragen der Adreß/Datensignale übertragen. Folglich können eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems unter Verwendung der beiden Testeinrichtungen in der gleichen Weise wie in der zweiten bevorzugten Ausführungsform einfach ausgeführt werden.
  • 13 ist ein Blockdiagramm, das eine verbesserte Form der in 12 dargestellten zweiten Ausführungsform zeigt. 14 ist ein Blockdiagramm, das den Aufbau zum Ausführen eines erneuten Tests der Einrichtung darstellt, nachdem sie an der Systemtestplatine montiert ist, in dem die in 13 gezeig te Programmtesteinrichtung verwendet wird. Die verbesserte Form der Testvorrichtung des Mikrocontrollers gemäß der dritten bevorzugten Ausführungsform, die in 12 dargestellt ist, ist hier in den Zeichnungen veranschaulicht.
  • In 13 werden die beiden Testeinrichtungen durch den gleichen Chip geschaffen, indem die beiden Testeinrichtungen (die Programmtesteinrichtung 93-1 und die Systemtesteinrichtung 93-2), die in 12 dargestellt sind, im gleichen Fertigungsprozess gefertigt werden. In 13 ist die für eine Programmfehlersuche und -beseitigung verwendete Programmtesteinrichtung 93-1 auf die Programmtestplatine 92-1 montiert, während sie mit dem externen ICE verbunden ist, und die Programmtesteinrichtung, die auch für einen Test eines vom Nutzer erzeugten Systems verwendet wird, ist an der Systemtestplatine 92-2 montiert.
  • Mit anderen Worten ist die Testvorrichtung des Mikrocontrollers, dargestellt in 13, von der in 12 dargestellten oben erwähnten Ausführungsform insofern verschieden, als die Systemtesteinrichtung (d. h. die Programmtesteinrichtung), die im gleichen Fertigungsprozess wie die Programmtesteinrichtung für eine Programmfehlersuche und -beseitigung gefertigt wurde, auch für einen Test eines vom Nutzer erzeugten Systems genutzt wird. Es besonders zu erwähnen, dass die Operationen zum Ausführen einer Programmfehlersuche und -beseitigung und eines Tests eines vom Nutzer erzeugten Systems unter Verwendung einer solchen Programmtesteinrichtung 93-1 (hiermit die "Testeinrichtung" genannt) im wesentlichen die gleichen sind wie die Operationen der in 12 dargestellten Ausführungsform.
  • In der Testvorrichtung des Mikrocontrollers, dargestellt in 13, ist jede der beiden Testeinrichtungen (d. h. die Programmtesteinrichtungen 93-1) mit der peripheren Schaltung 70-1 für eine asynchrone Kommunikation ausgestattet. Mit anderen Worten hat die Testvorrichtung des Mikrocontrollers, dargestellt in 13, auch die peripheren Schaltungen für eine asynchrone Kommunikation zum Verarbeiten der Signale im asynchronen System in den Testeinrichtungen in der gleichen Weise wie die dritte bevorzugte Ausführungsform. Ein typisches Beispiel einer solchen peripheren Schaltung für eine asynchrone Kommunikation ist ein UART.
  • Die von der peripheren Schaltung für eine asynchrone Kommunikation verschiedenen Bestandteilelemente in jeder der beiden Testeinrichtungen sind die gleichen wie diejenigen der oben erwähnten zweiten und dritten bevorzugten Ausführungsformen. Daher wird eine detaillierte Erläuterung derartiger Bestandteilelemente hiermit weggelassen.
  • In der Testvorrichtung des Mikrocontrollers, dargestellt in 13, arbeiten verschiedene Bestandteilelemente in jeder der beiden Testeinrichtungen einschließlich der peripheren Schaltung 70-1 für eine asynchrone Kommunikation auf der Basis des ersten internen Taktes CLK1. In diesem Fall wird eine Signalübertragung im asynchronen System zwischen den beiden Testeinrichtun gen (d. h. den Programmtesteinrichtungen 93-1) über die seriellen Signalübertragungsleitungen TL zum Übertragen der Adreß/Datensignale ausgeführt. Folglich können eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems durch Verwenden nur einer Art der Testeinrichtungen in der gleichen Weise wie in der in 7 dargestellten Testvorrichtung einfach ausgeführt werden.
  • Eine Erläuterung wird in weiteren Einzelheiten geliefert. Wenn in der Testvorrichtung mit einer Art von oben beschriebenen Testeinrichtungen eine Programmfehlersuche und -beseitigung auf der ICE-Seite ausgeführt wird, wird die Testvorrichtung unter Verwendung der externen Anschlüsse auf den Tool-Modus eingestellt. Danach werden der externe ICE 90 und die Programmtesteinrichtung 93-1 über die erste Seriell/Parallel-Schnittstellenschaltung 50-1 verbunden. Die beiden Programmtesteinrichtungen 93-1 werden dann über die beiden ersten Seriell/Parallel-Schnittstellenschaltungen 50-1 miteinander verbunden. Auf diese Weise wird das Programm für einen Programmtest über die Seriell/Parallel-Schnittstellenschaltung 50-1 der anderen Testeinrichtung oder über die erste Schreibschnittstelle 8-1 auf der Platine in der gleichen Weise wie in der in 7 gezeigten oben erwähnten Testvorrichtung in den ersten ROM 10-1 geschrieben. Der erste CPU 20-1 der anderen Testeinrichtung liest seriell das im ersten ROM 10-1 gespeicherte Programm und betreibt den Mikrocontroller.
  • Wenn der Inhalt der in dem einen ersten internen Bus überwachenden RAM 40-1 gehaltenen Daten oder der Inhalt der im ersten ROM 10-1 gehaltenen Daten oder der Inhalt der zum externen ICE 90 gesendeten Daten unter Verwendung der ersten seriellen Schnittstelle 51-1 in einer der Testeinrichtungen in der gleichen Weise wie in der in 7 gezeigten oben erwähnten Testvorrichtung ausgelesen wird, kann danach eine Programmfehlersuche und -beseitigung des Mikrocontrollers einfach ausgeführt werden, während die Testeinrichtung an der Platine für einen Test eines vom Nutzer erzeugten Systems montiert ist.
  • Wenn auf der anderen Seite ein Test eines vom Nutzer erzeugten Systems nach einer Programmfehlersuche und -beseitigung in der Testvorrichtung mit den beiden oben beschriebenen, aus dem gleichen Chip bestehenden Testeinrichtungen ausgeführt wird, wird die Testvorrichtung durch Verwenden externer Anschlüsse in der gleichen Weise wie in der in 7 gezeigten oben erwähnten Testvorrichtung auf den normalen Betriebsmodus eingestellt. Der externe ICE 90 und eine der Testeinrichtungen werden von der anderen Testeinrichtung in der gleichen Weise wie in der in 7 gezeigten oben erwähnten Testvorrichtung getrennt, und das Programm für einen Systemtest wird in den ersten ROM 10-1 in der Form geschrieben, in der die andere Testeinrichtung an der Systemtestplatine 92-2 montiert ist.
  • Der Inhalt der im ersten ROM 10-1 der an der Systemtestplatine 92-2 montierten Testeinrichtung gehaltenen Daten wird ausgelesen, und eine Systemfehlersuche und -beseitigung im normalen Betrieb wird ausgeführt. Folglich kann ein Test eines vom Nutzer erzeugten Systems durch Verwenden der Testeinrichtung einfach ausgeführt werden. In diesem Fall kann auch ein Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung, als ob die in Masse gefertigten Einrichtungen an der Platine des Systems montiert sind, in der gleichen Weise wie in der in 7 gezeigten Testvorrichtung effizient ausgeführt werden, indem man den ersten ROM 10-1 in der anderen Testeinrichtung als den Masken-ROM fungieren lässt.
  • Genauer gesagt wird, wenn der Mikrocontroller mit dem Ziel eines Tests eines vom Nutzer erzeugten Systems getrennt betrieben wird, das Programm für einen Systemtest in den Flash-Mikrocontroller geschrieben, und dieser Flash-Mikrocontroller wird als die Testeinrichtung betrieben. Auch in diesem Fall wird das Programm für einen Systemtest durch Verwenden der parallelen Schnittstelle im Flash-Mikrocontroller ausgelesen. Auf diese Weise kann der Mikrocontroller betrieben werden, ohne den ICE und die ICE-Platine mit der Seriell/Parallel-Schnittstellenschaltung zu verbinden.
  • Wenn die Testeinrichtung wie z. B. der Flash-Mikrocontroller als nicht normal arbeitend bestätigt wird, nachdem er als Produkt versandt ist, kann ein erneuter Test des Programms und der Nutzerzielplatine einfach ausgeführt werden, während die Testeinrichtung an der Nutzerzielplatine 99 montiert ist, die in 14 gezeigt ist. Um die Testeinrichtung nach einem Versand als das Produkt von der Testeinrichtung in dem Zustand, in dem sie an der Nutzerzielplatine montiert ist, klar zu unterscheiden, wird hiermit übrigens die Testein richtung in dem Zustand, in dem sie an der Nutrerzielplatine montiert ist, als die "Testeinrichtung 93-3 für einen Nutzersystemtest" bezeichnet.
  • Die Testeinrichtung 93-3 für einen Nutzersystemtest hat ganz selbstverständlich den gleichen Aufbau wie der Aufbau der oben erwähnten Programmtesteinrichtung 93-1. Genauer gesagt haben der ROM 10-3 des Nutzers und die CPU 20-3 des Nutzers in der Testeinrichtung 93-3 für einen Nutzersystemtest die gleiche Funktion wie der erste ROM 10-1 bzw. die erste CPU 20-1 in der Programmtesteinrichtung 93-1. Die Seriell/Parallel-Schnittstellenschaltung 50-3 des Nutzers, die die serielle Schnittstelle 53-1 des Nutzers und die parallele Schnittstelle 52-3 des Nutzers einschließt, hat die gleiche Funktion wie die erste Seriell/Parallel-Schnittstellenschaltung 50-1, die die erste serielle Schnittstelle 51-1 und die erste parallele Schnittstelle 52-1 in der Programmtesteinrichtung 93-1 enthält.
  • Der eingebaute RAM 30-3 des Nutzers, die periphere Schaltung 70-3 für eine asynchrone Kommunikation des Nutzers, die Schreibschnittstelle 8-3 auf der Platine des Nutzers und der einen internen Bus überwachende RAM 40-3 eines Nutzers in der Testeinrichtung 93-3 für einen Nutzersystemtest haben die gleiche Funktion wie der erste eingebaute RAM 30-1, die periphere Schaltung 70-1 für eine asynchrone Kommunikation, die erste Schreibschnittstelle 8-1 auf der Platine bzw. der einen ersten internen Bus überwachende RAM 40-1 in der Programmtesteinrichtung 93-1
  • Im folgenden wird eine Erläuterung in weiteren Einzelheiten gegeben. In 14 sind die Anschlüsse, die als die Schnittstelle mit der ICE-Platine dienen, (hier die Anschlüsse der ersten seriellen Schnittstelle 51-1 in der Programmtesteinrichtung 93-1) übrig, nachdem das Produkt, das durch Montieren der Testeinrichtung wie z. B. des Flash-Mikrocontrollers an der Nutrerzielplatine erhalten wird, als Produkt versandt ist. Diese Anordnung macht es möglich, einen Test des Nutzerprogramms und der Nutrerzielplatine 99 noch einmal auszuführen, indem die Anschlüsse der ersten seriellen Schnittstelle 51-1 mit den Anschlüssen der seriellen Schnittstelle 51-3 des Nutzers verbunden und die Signale von der Programmtesteinrichtung 93-1 an die Nutzerzielplatine 99 geliefert werden, wenn irgendeine Störung im Produkt nach einem Versand auftritt oder sich entwickelt.
  • Wie oben beschrieben wurde, veranschaulichen die 7, 8, 13 und 14 die Anwendungsbeispiele des Aufbaus der Testvorrichtung, in der die Systemtesteinrichtung, die im gleichen Fertigungsprozess wie die Programmtesteinrichtung hergestellt wurde, als die Testeinrichtung für einen Nutzersystemtest verwendet wird, zu den zweiten und dritten bevorzugten Ausführungsformen. Es sollte jedoch besonders erwähnt werden, dass ein solcher Aufbau auch auf die später erscheinenden vierten bis siebten bevorzugten Ausführungsformen angewendet werden kann.
  • 15 ist ein Blockdiagramm, das den Aufbau der vierten bevorzugten Ausführungsform der vorliegenden Erfindung zeigt. Die Zeichnung stellt das dritte konkrete Beispiel der Testvorrichtung des Mikrocontrollers gemäß der grundlegenden Ausführungsform dar, die auf dem in 4 gezeigten zweiten Prinzip basiert.
  • In der vierten bevorzugten Ausführungsform der vorliegenden Erfindung, die in 15 dargestellt ist, ist eine Programmtesteinrichtung 94-1 mit einer peripheren Schaltung 71-1 für eine asynchrone/synchrone Kommunikation (manchmal abgekürzt als "Async/Sync") ausgestattet, und eine Systemtesteinrichtung 94-2 ist mit einer peripheren Schaltung 71-2 für eine Async/Sync-Kommunikation versehen. Mit anderen Worten bildet im Gegensatz zu den zweiten und dritten bevorzugten Ausführungsformen (und ihren verbesserten Formen), die oben beschrieben wurden, die vierte bevorzugte Ausführungsform eine Testvorrichtung eines Mikrocontrollers gemäß der vorliegenden Erfindung, indem die Programmtesteinrichtung 94-1 mit der eingebauten peripheren Schaltung 71-1 für eine Async/Sync-Kommunikation verwendet wird, um die Signale im asynchronen System oder im Taktsynchronisierungssystem zu verarbeiten, und die Systemtesteinrichtung 94-2 mit der eingebauten peripheren Schaltung 71-2 für eine Async-Kommunikation, um die Signale im asynchronen System zu verarbeiten.
  • Die von der peripheren Schaltung verschiedenen Schaltungselemente in jeder der Testeinrichtung und der Systemtesteinrichtung sind die gleichen wie diejenigen der in 6 dargestellten zweiten bevorzugten Ausführungsform. Daher wird eine detaillierte Erläuterung derartiger Bestandteilelemente hiermit weggelassen.
  • In der oben beschriebenen dritten bevorzugten Ausführungsform arbeiten verschiedene Bestandteilelemente einschließlich der peripheren Schaltung 71-1 für eine Async/Sync-Kommunikation in der Programmtesteinrichtung 94-1 auf der Basis des ersten internen Taktes CLK1. Auf der anderen Seite arbeiten verschiedene Bestandteilelemente einschließlich der peripheren Einrichtung 94-2 für eine Async/Sync-Kommunikation in der Systemtesteinrichtung 94-2 auf der Basis des zweiten internen Taktes CLK2, der vom ersten internen Takt CLK1 verschieden ist. Auch in diesem Fall wird das Signal Sse zwischen der Programmtesteinrichtung 94-1 und der Systemtesteinrichtung 94-2 über die seriellen Signalübertragungsleitungen TL zum Übertragen der Adreß/Datensignale in der gleichen Weise wie in der oben beschriebenen dritten Ausführungsform übertragen. Folglich können eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems einfach ausgeführt werden, indem die beiden Testeinrichtungen in der gleichen Weise wie in den oben beschriebenen zweiten und dritten Ausführungsformen verwendet werden.
  • Übrigens ist in der oben beschriebenen vierten bevorzugten Ausführungsform die Programmtesteinrichtung mit der peripheren Schaltung für eine Async/Sync-Kommunikation und die Systemtesteinrichtung mit der peripheren Schaltung für eine asynchrone Kommunikation versehen. Die Signale können jedoch auch im asynchronen System zwischen den beiden Testeinrichtungen in dem Aufbau übertragen werden, in dem die Programmtesteinrichtung mit der peripheren Schaltung für eine asynchrone Kommunikation und die Systemtesteinrichtung mit der peripheren Async/Sync-Schaltung versehen ist. Daher können unter Verwendung der beiden Testeinrichtungen eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems einfach ausgeführt werden.
  • 16 ist ein Blockdiagramm, das den Aufbau der fünften bevorzugten Ausführungsform der vorliegenden Erfindung zeigt. Die Zeichnung stellt das vierte konkrete Beispiel der Testvorrichtung des Mikrocontrollers gemäß der grundlegenden Ausführungsform auf der Basis des in 2 gezeigten zweiten Prinzips dar.
  • In der fünften bevorzugten Ausführungsform der vorliegenden Erfindung, die in 16 dargestellt ist, ist eine Programmtesteinrichtung 95-1 mit einer peripheren Schaltung (zum Beispiel einer ersten peripheren Schaltung 7-1 des Taktsynchronisierungstyps ähnlich der in 6 gezeigten Schaltung) versehen, um die Signale der parallelen Form (wie z. B. die ersten Steuersignale Scc1) zu verarbeiten, die von der ersten parallelen Schnittstelle gesendet werden. Eine Systemtesteinrichtung 95-2 ist jedoch nicht mit einer peripheren Schaltung zum Verarbeiten der Signale der parallelen Form ausgestattet. In diesem Fall ist eine parallele Schnittstelle zum Senden der Signale der parallelen Form an die periphere Schaltung dann selbstverständlich nicht für die Systemtesteinrichtung 95-1 vorgesehen. Mit anderen Worten bildet im Gegensatz zur schon beschriebenen zweiten bevorzugten Ausführungsform die fünfte bevorzugte Ausführungsform die Testvorrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung, indem die Programmtesteinrichtung 95-1 mit der eingebauten ersten peripheren Schaltung 7-1 des Taktsynchronisierungssystems und die Systemtesteinrichtung 95-2 ohne die eingebaute periphere Schaltung verwendet werden.
  • Andere Bestandteilelemente als die periphere Schaltung und die Seriell/Parallel-Schnittstellenschaltung in der Programmtesteinrichtung und der Systemtesteinrichtung sind die gleichen wie diejenigen der in 6 gezeigten zweiten Ausführungsform. Eine detaillierte Erläuterung derartiger Bestandteilelemente wird daher hiermit weggelassen.
  • In der oben beschriebenen fünften bevorzugten Ausführungsform werden die vom externen ICE zugeführten Signale der parallelen Form durch die erste parallele Schnittstelle 52-1 verarbeitet und an die erste periphere Schaltung 7-1 gesendet. Im Gegensatz dazu werden die Signale Sse, die über die erste serielle Schnittstelle 51-1 und über die seriellen Signalübertragungsleitungen TL an die Systemtesteinrichtung 95-2 gesendet werden, alle durch die zweite serielle Schnittstelle 58-2 verarbeitet. Selbst wenn die Systemtesteinrichtung nicht mit der eingebauten peripheren Schaltung ausgestattet ist, werden auf diese Weise die Signale der parallelen Form, die von außen geliefert werden, ohne Fehler zur Systemtesteinrichtung übertragen.
  • Selbst wenn die periphere Schaltung und die parallele Schnittstelle zum Verarbeiten der Signale der parallelen Form in der Systemtesteinrichtung nicht enthalten sind, kann in der fünften bevorzugten Ausführungsform die serielle Schnittstelle allein die Signale in der Systemtesteinrichtung verarbeiten. Folglich können eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems einfach ausgeführt werden, indem die beiden Testeinrichtungen in der gleichen Weise wie in den zweiten bis vierten bevorzugten Ausführungsformen und ihren verbesserten Formen verwendet werden.
  • 17 ist ein Blockdiagramm, das den Aufbau der sechsten bevorzugten Ausführungsform der vorliegenden Erfindung zeigt. Die Zeichnung stellt das fünfte konkrete Beispiel der Testvorrichtung des Mikrocontrollers gemäß der grundlegenden Ausführungsform auf der Basis des in 4 gezeigten zweiten Prinzips dar.
  • In der sechsten bevorzugten Ausführungsform der vorliegenden Erfin dung, die in 17 dargestellt ist, ist eine Systemtesteinrichtung 96-2 mit einer peripheren Schaltung (wie z. B. der zweiten peripheren Schaltung 7-2 des Taktsynchronisierungssystems, dargestellt in 6) ausgestattet, um die Signale der parallelen Form (wie z. B. das zweite Steuersignal Scc2) zu verarbeiten, das von einer zweiten parallelen Schnittstelle 52-2 gesendet wird. Eine Programmtesteinrichtung 96-1 ist jedoch nicht mit einer peripheren Schaltung zum Verarbeiten von Signalen der parallelen Form ausgestattet. Ganz selbstverständlich ist die Programmtesteinrichtung 96-1 auch in diesem Fall nicht mit einer parallelen Schnittstelle zum Senden der Signale der parallelen Form an die periphere Schaltung ausgestattet. Mit anderen Worten bildet im Gegensatz zur in 6 gezeigten zweiten bevorzugten Ausführungsform die sechste bevorzugte Ausführungsform die Testvorrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung, indem die Programmtesteinrichtung 96-1, die nicht mit der eingebauten peripheren Schaltung ausgestattet ist, in Kombination mit der Programmtesteinrichtung 96-2 verwendet wird, die die zweite eingebaute periphere Schaltung 7-2 des Taktsynchronisierungssystems aufweist.
  • In diesem Fall ist jedoch die Vorrichtung mit einem Selektor 57-1 ausgestattet, um den Anschluss zum Empfangen der vom externen ICE 90 gelieferten Signale und den Anschluss zum Empfangen der Signale Sse umzuschalten, die an die zweite serielle Schnittstelle 51-2 in der Programmtesteinrichtung 96-1 gesendet werden. Dieser Selektor 57-1 hat im Wesentlichen die gleiche Funktion wie diejenige des Selektors 57-1, der schon mit Verweis auf 11 erläutert wurde.
  • Andere Bestandteilelemente als die periphere Schaltung, die Seriell/Parallel-Schnittstellenschaltung und der Selektor sowohl der Programmtesteinrichtung als auch der Systemtesteinrichtung sind die gleichen wie diejenigen der zweiten bevorzugten Ausführungsform, die in 6 dargestellt ist. Eine detaillierte Erläuterung solcher Bestandteilelemente wird daher hiermit weggelassen.
  • In der oben beschriebenen sechsten bevorzugten Ausführungsform werden die vom externen ICE 90 gelieferten Signale alle durch die erste serielle Schnittstelle 59-1 verarbeitet. Die durch diese erste serielle Schnittstelle 59-1 verarbeiteten Signale Sse werden über die seriellen Signalübertragungsleitungen TL zur Systemtesteinrichtung 96-2 übertragen, nachdem die Anschlussumschaltoperation vom Selektor 57-1 vorgenommen ist. Die zur Systemtesteinrichtung 96-2 übertragenen Signale Sse werden durch die zweite parallele Schnittstelle 52-2 verarbeitet und dann an die zweite periphere Schaltung 7-2 gesendet. Die zweite periphere Schaltung 7-2 verarbeitet die Signale der parallelen Form in der gleichen Weise wie in der schon beschriebenen zweiten bevorzugten Ausführungsform. Auf diese Weise können, selbst wenn der Aufbau nicht die in der Programmtesteinrichtung eingebaute periphere Schaltung einschließt, die Signale der seriellen Form durch Verwenden der Signale der seriellen Form ohne Fehler zur Systemtesteinrichtung übertragen werden.
  • Selbst wenn die periphere Schaltung und die parallele Schnittstelle zum Verarbeiten der Signale der parallelen Form in der Programmtesteinrichtung in der sechsten bevorzugten Ausführungsform nicht eingebaut sind, können die Signale in der Programmtesteinrichtung verarbeitet werden, indem die seriellen Schnittstellen in Kombination mit dem Selektor zum Umschalten der Anschlüsse geeignet genutzt werden. Folglich können eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems durch Verwenden der beiden Testeinrichtungen in der gleichen Weise wie in den zweiten bis fünften bevorzugten Ausführungsformen und ihren verbesserten Formen einfach ausgeführt werden.
  • 18 ist ein Blockdiagramm, das den Aufbau der siebten bevorzugten Ausführungsform der vorliegenden Erfindung zeigt. Die Zeichnung stellt das sechste konkrete Beispiel der Testvorrichtung des Mikrocontrollers gemäß der grundlegenden Ausführungsform basierend auf dem in 4 gezeigten zweiten Prinzip dar.
  • In der siebten bevorzugten Ausführungsform der vorliegenden Erfindung, die in 18 dargestellt ist, sind sowohl die Programmtesteinrichtung 97-1 als auch die Systemtesteinrichtung 97-2 nicht mit einer peripheren Schaltung zum Verarbeiten der Signale der parallelen Form versehen. Ganz selbstverständlich sind sowohl die Programmtesteinrichtung 97-1 als auch die Systemtesteinrichtung 97-2 in diesem Fall nicht mit einer parallelen Schnittstelle zum Senden der Signale der parallelen Form an die periphere Schaltung versehen. Mit anderen Worten bildet im Gegensatz zur in 6 gezeigten zweiten bevorzugten Ausführungsform diese bevorzugte Ausführungsform die Testvorrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung, indem die Programmtesteinrichtung 97-1 und die Programmtesteinrichtung 96-2 verwendet werden, die nicht mit der eingebauten peripheren Schaltung versehen sind.
  • In diesem Fall ist jedoch die Testvorrichtung mit einem Selektor 57-1 zum Umschalten mehrerer Anschlüsse ausgestattet. Dieser Selektor 57-1 schaltet den Anschluß, der die vom externen ICE 90 gelieferten Signale empfängt, und die Anschlüsse um, die die Signale Sse empfangen, die an die zweite serielle Schnittstelle 59-2 in der Programmtesteinrichtung 97-1 gesendet werden. Dieser Selektor 57-1 hat im wesentlichen die gleiche Funktion wie die des Selektors 57, der mit Verweis auf 11 erläutert wurde.
  • Andere Bestandteilelemente als die peripheren Schaltungen, die Seriell/Parallel-Schnittstellenschaltungen und der Selektor in der Programmtesteinrichtung und der Systemtesteinrichtung sind die gleichen wie diejenigen der in 6 gezeigten zweiten bevorzugten Ausführungsform. Daher wird eine detaillierte Erläuterung solcher Bestandteilelemente weggelassen.
  • In der siebten bevorzugten Ausführungsform werden die vom externen ICE 90 gelieferten Signale alle durch die erste serielle Schnittstelle 59-1 verarbeitet. Die Signale Sse, die durch diese erste serielle Schnittstelle 59-1 verarbeitet werden, werden über die seriellen Signalübertragungsleitungen TL zur Systemtesteinrichtung 97-2 übertragen, nachdem der Selektor 57-1 die Anschlüsse umschaltende Operation ausführt. Die zur Systemtesteinrichtung 97-2 übertragenen Signale Sse werden alle durch die zweite serielle Schnittstelle 59-2 verarbeitet. Auf diese Weise können, selbst wenn die Programmtesteinrichtung und die Systemtesteinrichtung die eingebaute periphere Schaltung nicht enthalten, die Signale der seriellen Form ohne Fehler zur Systemtesteinrichtung übertragen werden, indem die Signale der seriellen Form als die Signale, die von außen geliefert werden, und als die Signale, die in den beiden Testeinrichtungen verarbeitet werden, genutzt werden.
  • In der oben beschriebenen siebten bevorzugten Ausführungsform können alle Signale verarbeitet werden, indem die seriellen Schnittstellen in Kombination mit dem Anschlüsse umschaltenden Selektor genutzt werden, obgleich die Programmtesteinrichtung und die Systemtesteinrichtung nicht mit der peripheren Schaltung und mit der parallelen Schnittstelle zum Verarbeiten der Signale der parallelen Form ausgestattet sind. Folglich können eine Programmfehlersuche und -beseitigung und ein Test eines vom Nutzer erzeugten Systems einfach ausgeführt werden, indem die beiden Testeinrichtungen in der gleichen Weise wie in den zweiten bis sechsten bevorzugten Ausführungsformen und ihren verbesserten Formen verwendet werden.
  • Die ersten bis siebten bevorzugten Ausführungsformen und ihre verbesserten Formen, die so beschrieben wurden, können eine Programmfehlersuche und -beseitigung und einen Test eines vom Nutzer erzeugten Systems in der Form einfach ausführen, in der die Programmtesteinrichtung und die Systemeinrichtung an der Platine des vom Nutzer erzeugten Systems montiert sind. Aus diesem Grund müssen die Programmtesteinrichtung und die Systemtesteinrichtung nicht getrennt entwickelt werden, und sie können in einer kurzen Zeitspanne effizient entwickelt werden. In diesem Fall kann die Entwicklung sowohl der Programmtesteinrichtung als auch der Systemtesteinrichtung erreicht werden, indem nur eine Art der Einrichtungen entwickelt wird. Demgemäß kann der Nutzer einen zeitnahen Systementwurf ausführen, und TAT für die Systementwicklung kann reduziert werden.
  • Gemäß den ersten bis siebten bevorzugten Ausführungsformen und ihren verbesserten Formen der vorliegenden Erfindung können ein Programmtest und ein Test eines vom Nutzer erzeugten Systems in der gleichen Umgebung einfach und effizient ausgeführt werden, als ob die in Masse gefertigten Einrichtungen an der Zielplatine montiert sind. Daher kann der Übergang von der Pro grammentwicklung und der Systementwicklung zur Massenproduktion der Einrichtungen einfach vorgenommen werden.
  • Falls der Nutzer eine Beschwerde gegen die Produkte hat, nachdem die in Masse gefertigten Einrichtungen als die Produkte versandt sind, ermöglichen die ersten bis siebten bevorzugten Ausführungsformen und ihre verbesserten Formen der vorliegenden Erfindung, die defekten Positionen auf der Basis der Informationen des einen internen Bus überwachenden RAM einfach zu analysieren, indem die vom System der vorliegenden Erfindung entwickelte Testeinrichtung genutzt wird.
  • Übrigens ist der konkrete Aufbau der Testvorrichtung des Mikrocontrollers gemäß der vorliegenden Erfindung nicht besonders auf die ersten bis siebten bevorzugten Ausführungsformen und ihre verbesserten Formen beschränkt, und verschiedene andere Modifikationen können vorgenommen werden. Auch eine bevorzugte Ausführungsform der vorliegenden Erfindung ist zum Beispiel die Testvorrichtung, die die Kombination der mit der peripheren Schaltung für eine asynchrone Kommunikation ausgestatteten Testeinrichtung, die in der dritten und vierten bevorzugten Ausführungsform beschrieben ist, mit der Testeinrichtung ohne die periphere Schaltung aufweist, die in den fünften bis siebten Ausführungsformen beschrieben ist.
  • Wie oben erläutert wurde, liefern die Testvorrichtung des Mikrocontrollers und der Test dafür gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die folgenden Vorteile. Erstens müssen die Programmtesteinrichtung und die Systemtesteinrichtung nicht separat entwickelt werden, weil die einen internen Bus überwachende Einheit zum Überwachen des Zustands des internen Busses, während der Ein-Chip-Mikrocontroller betrieben wird, in der Testeinrichtung enthalten ist, und ein Programmtest und Systemtest werden ausgeführt, indem die in diese einen internen Bus überwachende Einheit geschriebenen Daten ausgelesen werden. Folglich können die Programmtesteinrichtung und die Systemtesteinrichtung innerhalb einer kurzen Zeit entwickelt werden, indem nur eine Art der Einrichtung (Chip) entwickelt wird. Folglich kann der Nutzer einen zeitnahen Systementwurf erstellen, und die TAT für die Systementwicklung kann verkürzt werden.
  • Zweitens verarbeiten die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die vom externen ICE gelieferten Signale über die parallele Schnittstelle und verarbeiten das Überwachungsergebnis des internen Busses über die serielle Schnittstelle. Daher können ein Programmtest und Systemtest einfach und effizient ausgeführt werden, und eine Analyse von Operationsdefekten kann in der gleichen Umgebung durchgeführt werden, als ob die Einrichtungen (Chips) an der Platine des Systems montiert sind.
  • Drittens verwenden die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die Anschlüsse der seriellen Schnittstelle und der parallelen Schnittstelle auch als die Anschlüsse der Mehrzweckports. Daher können die externen Anschlüsse der Einrichtungen effektiv genutzt werden, und ein Programmtest oder Systemtest können effizient ausgeführt werden.
  • Viertens nutzen die Testvorrichtung des Mikrocontrollers und dessen Test gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die Anschlüsse der seriellen und parallelen Schnittstellen auch als die Anschlüsse, die die Eingangs/Ausgangssignale behandeln, die von den Signalen für die Mehrzweckports verschieden sind. Daher können die externen Anschlüsse der Einrichtungen effizient genutzt werden, und ein Programmtest und Systemtest können effizient ausgeführt werden.
  • Fünftens können die Testvorrichtungen des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die Positionen der Anschlüsse der seriellen Schnittstelle umschalten. Daher kann ein Systemtest der Zielplatine für alle Anschlüsse der Einrichtungen einfach und effizient ausgeführt werden.
  • Sechstens sind die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung mit den peripheren Schaltungen zum Verarbeiten der Signale der parallelen Form ausgestattet, die von der parallelen Schnittstelle gesendet werden. Daher können die externen Anschlüsse der Einrichtungen effizient genutzt werden, und ein Programmtest und Systemtest können effizient ausgeführt werden.
  • Siebtens können die Testvorrichtungen des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die Signale, die von außen geliefert werden, übertragen, indem die seriellen Schnittstellen geeignet genutzt werden, selbst wenn periphere Schaltungen zum Verarbeiten der Signale der parallelen Form, die von der parallelen Schnittstelle in der Seriell/Parallel-Schnittstellenschaltung gesendet werden, nicht vorgesehen sind. Daher können die externen Anschlüsse der Einrichtungen effizient genutzt werden, und ein Programmtest und Systemtest können effizient ausgeführt werden.
  • Achtens weist in der Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die Datenhalteeinheit in der Testeinrichtung einen wiederbeschreibbaren Flash-ROM auf. Daher kann das Überwachungsergebnis des Zustands des internen Busses einfach in den Flash-ROM geschrieben werden, und der Nutzer kann einen zeitnahen Systementwurf ausführen.
  • Neuntens können die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung das Überwachungsergebnis des Zustands des internen Busses einfach in den Flash-ROM schreiben, indem die Schreibschnittstelle auf der Platine genutzt wird. Daher können eine Programmentwicklung und ein Systemtest innerhalb einer kurzen Zeit ausgeführt werden.
  • Zehntens vergeben die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung Paßworte für den einen internen Bus überwachenden RAM und den ROM und können die Daten analysieren, die in den Flash-ROM beschrieben werden, indem solche Paßworte genutzt werden. Dadurch wird verhindert, daß eine vom Programmentwickler verschiedene andere dritte Person den Inhalt der in den einen internen Bus überwachenden RAM und den ROM geschriebenen Daten ausliest und das Programm decodiert.
  • Elftens können die Testvorrichtungen des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung die beiden Testeinrichtungen mit dem gleichen Aufbau enthalten und eine von ihnen als die Programmtesteinrichtung, die dem ICE zugeordnet ist, und die andere als die Systemtesteinrichtung nutzen. Deshalb müssen die Programmtesteinrichtung und die Systemtesteinrichtung nicht getrennt entwickelt werden, und sie beide können innerhalb einer kurzen Zeit entwickelt werden, indem nur eine Art einer Einrichtung (Chip) entwickelt wird. Folglich kann die TAT für die Systementwicklung verkürzt werden.
  • Zwölftens können, wenn die Programmtesteinrichtung und/oder die Systemtesteinrichtung die eingebaute periphere Schaltung für eine asynchrone Synchronisation zum Verarbeiten der Signale im asynchronen System aufweisen/aufweist, die Testvorrichtung des Mikrocontrollers und dessen Testverfahren gemäß mehreren typischen Ausführungsformen der vorliegenden Erfindung einen Programmtest und Systemtest einfach und effizient ausführen, indem die Signale über die serielle Schnittstelle übertragen.

Claims (21)

  1. Vorrichtung zum Testen eines Mikrocontrollers, in einer Einrichtung aufweisend: eine wiedereinschreibbare Daten haltende Einheit (1) zum Halten beliebiger Daten; eine Schreibschnittstelle mit einer Funktion zum Wiedereinschreiben des Inhalts von Daten in der Datenhalteeinheit (1); eine Verarbeitungseinheit (2), um einen Mikrocontroller auf der Basis eines Steuersignals zu betreiben und die beliebigen Daten zu verarbeiten; eine Schnittstelleneinheit (5) für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen, das Steuersignal herauszunehmen und es an die Verarbeitungseinheit zu senden; eine einen internen Bus überwachende Einheit (4), um den Zustand eines internen Busses zum gegenseitigen Verbinden der Datenhalteeinheit, der Verarbeitungseinheit und der Schnittstelleneinheit für eine externe Kommunikation zu überwachen, dadurch gekennzeichnet, daß die Verarbeitungseinheit (2) den Zustand des internen Busses zu der Zeit, wenn der Mikrocontroller auf der Basis des Steuersignals betrieben wird, über die Schnittstelleneinheit (5) für eine externe Kommunikation in die einen internen Bus überwachende Einheit (4) schreibt und die in die einen internen Bus überwachende Einheit (4) geschriebenen Daten in die Datenhalteeinheit (1) eingibt oder sie nach außen sendet.
  2. Vorrichtung nach Anspruch 1, worin die Schnittstelleneinheit (5) für eine externe Kommunikation eine Seriell/Parallel-Schnittstelleneinheit (50) aufweist, die eine serielle Schnittstelle (51) zum Verarbeiten von Signalen einer seriellen Form und eine parallele Schnittstelle (52) zum Verarbeiten von Signalen einer parallelen Form enthält.
  3. Vorrichtung nach Anspruch 2, worin die Anschlüsse von jeder der seriellen Schnittstelle (51) und der parallelen Schnittstelle (52) in der Seriell/Parallel-Schnittstellenschaltung (50) so ausgebildet sind, daß sie auch die für die Mehrzweckports (53, 54) verwendeten Signale behandeln können.
  4. Vorrichtung nach Anspruch 3, worin, wenn die Anschlüsse von jeder der seriellen Schnittstelle (51) und der parallelen Schnittstelle (52) in der Seriell/Parallel-Schnittstellenschaltung so ausgebildet sind, daß sie auch als die Anschlüsse zum Behandeln anderer Eingangs/Ausgangssignale als die für die Mehrzweckports (53, 54) verwendeten Signale arbeiten. die Anschlüsse zu den Anschlüssen zum Behandeln der anderen Eingangs/Ausgangssignale als die für die Mehrzweckports verwendeten Signale umgeschaltet werden können, während die seriellen und parallelen Schnittstellen verwendet werden.
  5. Vorrichtung nach Anspruch 2, worin die Positionen der Anschlüsse der seriellen Schnittstelle (51) in der Seriell/Parallel-Schnittstellenschaltung (50) nicht fixiert sind, sondern zu mehreren Positionen umgeschaltet werden können.
  6. Vorrichtung nach Anspruch 2, die ferner eine periphere Schaltung (7) zum Verarbeiten der Signale einer parallelen Form aufweist, die von der parallelen Schnittstelle (52) in der Seriell/Parallel-Schnittstellenschaltung (50) gesendet werden.
  7. Vorrichtung nach Anspruch 2, worin die Testvorrichtung nicht mit einer peripheren Schaltung zum Verarbeiten der Signale der parallelen Form ausgestattet ist, die von der parallelen Schnittstelle (52) in der Seriell/Parallel-Schnittstellenschaltung (50) gesendet werden, und die von außen gelieferten Signale alle durch die serielle Schnittstelle (51) übertragen werden.
  8. Vorrichtung nach Anspruch 1, worin die Datenhalteeinheit (1) einen ROM (10) aufweist, der Daten elektrisch wiedereinschreiben kann.
  9. Vorrichtung nach Anspruch 6, die ferner eine Schreibschnittstelle (8) auf der Platine mit einer Funktion zum Wiedereinschreiben des Inhalts der Daten in dem ROM (10) aufweist, während die Einrichtung an der Platine montiert ist.
  10. Vorrichtung nach Anspruch 1, worin, wenn die in die einen internen Bus überwachende Einheit (4) geschriebenen Daten nach außen gesendet werden, eine Sicherheitsfunktion durch Verwenden eines vorbestimmten Paßwortes dem von außen gelieferten Signal verliehen wird.
  11. Vorrichtung zum Testen eines Mikrocontrollers, in einer ersten Einrichtung aufweisend: eine erste wiedereinschreibbare Daten haltende Einheit (1-1) zum Halten beliebiger Daten; eine erste Schreibschnittstelle mit einer Funktion zum Wiedereinschreiben des Inhalts von Daten in der ersten Datenhalteeinheit (1-1); eine erste Verarbeitungseinheit (2-1), um einen Mikrocontroller auf der Basis eines ersten Steuersignals zu betreiben und die beliebigen Daten zu verarbeiten; eine erste Schnittstelleneinheit (5-1) für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen, das erste Steuersignal herauszunehmen und es an die erste Verarbeitungseinheit zu senden; und eine einen ersten internen Bus überwachende Einheit (4-1), um dem Zustand eines ersten internen Busses zum gegenseitigen Verbinden der ersten Datenhalteeinheit (1-1), der ersten Verarbeitungseinheit (2-1) und der ersten Schnittstelleneinheit (5-1) für eine externe Kommunikation zu überwachen; und in einer zweiten Einrichtung aufweisend: eine zweite wiedereinschreibbare Daten haltende Einheit (1-2) zum Halten beliebiger Daten; eine zweite Schreibschnittstelle mit einer Funktion zum Wiedereinschreiben des Inhalts von Daten in der zweiten Datenhalteeinheit (1-2), eine zweite Verarbeitungseinheit (2-2), um den Mikrocontroller auf der Basis eines zweiten Steuersignals zu betreiben und die beliebigen Daten zu verarbeiten; eine zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation, um die von der ersten Schnittstelleneinheit (5-1) empfangenen Signale für eine externe Kommunikation zu empfangen, das zweite Steuersignal herauszunehmen und es an die zweite Verarbeitungseinheit (2-2) zu senden; und eine einen zweiten internen Bus überwachende Einheit (4-2), um den Zustand eines zweiten internen Busses zum gegenseitigen Verbinden der zweiten Datenhalteeinheit (1-2), der zweiten Verarbeitungseinheit (2-2) und der zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation zu überwachen, dadurch gekennzeichnet, daß, wenn ein Programmtest des Mikrocontrollers ausgeführt wird, die erste Einrichtung und die zweite Einrichtung durch die erste Schnittstelleneinheit (5-1) für eine externe Kommunikation und durch die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation verbunden sind; die erste Verarbeitungseinheit (2-1) innerhalb der ersten Einrichtung die von außen gelieferten Signale über die erste Schnittstelleneinheit (5-1) für eine externe Kommunikation an die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation überträgt; die zweite Verarbeitungseinheit (2-2) in der zweiten Einrichtung den Zustand des zweiten internen Busses zu der Zeit, wenn das Programm für einen Programmtest, enthalten in den zur zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation übertragenen Signalen, betrieben wird, in die einen zweiten internen Bus überwachende Einheit schreibt und die in die einen zweiten internen Bus überwachende Einheit (4-2) geschriebenen Daten in die einen ersten internen Bus überwachende Einheit (4-1) oder in die erste Datenhalteeinheit (1-1) in der ersten Einrichtung über die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation und über die erste Schnittstelleneinheit (5-1) für eine externe Kommunikation eingibt oder die Daten nach außen sendet; worin, wenn ein Systemtest des Mikrocontrollers ausgeführt wird, die erste Einrichtung von der zweiten Einrichtung getrennt wird und die zweite Verarbeitungseinheit (2-2) in der zweiten Einrichtung den Zustand des zweiten internen Busses zu der Zeit, wenn ein Programm für einen Systemtest, enthalten in den in die zweite Datenhalteeinheit geschriebenen Signalen, betrieben wird, in die einen zweiten internen Bus überwachende Einheit durch die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation schreibt und die in die einen zweiten internen Bus überwachende Einheit (4-2) geschriebenen Daten von der zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation ausliest.
  12. Vorrichtung nach Anspruch 11, worin die erste Schnittstelleneinheit (5-1) für eine externe Kommunikation eine erste serielle Schnittstelle (51-1) zum Verarbeiten von Signalen der seriellen Form und eine erste parallele Schnittstelle (52-1) zum Verarbeiten von Signalen der parallelen Form enthält; die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation eine zweite serielle Schnittstelle (51-2) zum Verarbeiten von Signalen der seriellen Form und eine zweite parallele Schnittstelle (52-2) zum Verarbeiten von Signalen der parallelen Form enthält; wenn ein Programmtest des Mikrocontrollers ausgeführt wird, die erste Einrichtung mit der zweiten Einrichtung durch die erste serielle Schnittstelle und durch die zweite serielle Schnittstelle verbunden ist; und die von außen gelieferten Signale in die erste parallele Schnittstelle eingespeist und ferner über die erste serielle Schnittstelle zur zweiten seriellen Schnittstelle übertragen werden.
  13. Vorrichtung nach Anspruch 11, die ferner in der ersten Einrichtung eine erste periphere Schaltung (7-1) zum Verarbeiten der Signale der parallelen Form, die von der ersten parallelen Schnittstelle (52-1) in der ersten Seriell/Parallel-Schnittstellenschaltung (5-1) gesendet werden, enthält und in der zweiten Einrichtung eine zweite periphere Schaltung (7-2) enthält, um die Signale der parallelen Form zu verarbeiten, die von der zweiten parallelen Schnittstelle (52-2) in der zweiten Seriell/Parallel-Schnittstellenschaltung (5-2) verarbeitet werden.
  14. Vorrichtung nach Anspruch 12, worin zumindest eine der ersten und zweiten peripheren Schaltungen (7-1, 7-2) eine periphere Schaltung für eine asynchrone Kommunikation zum Verarbeiten der Signale in einem asynchronen System aufweist.
  15. Vorrichtung nach Anspruch 13, worin zumindest eine der ersten und zweiten peripheren Schaltungen (7-1, 7-2) eine periphere Schaltung für eine asynchrone/synchrone Kommunikation aufweist, die die Signale im asynchronen System oder im synchronen System verarbeiten kann.
  16. Vorrichtung nach Anspruch 12, die nicht mit zumindest einer der ersten peripheren Schaltung (7-1) zum Verarbeiten der Signale der parallelen Form, die von der ersten parallelen Schnittstelle (52-1) gesendet werden, und der zweiten peripheren Schaltung (7-2) zum Verarbeiten der Signale der parallelen Form, die von der zweiten parallelen Schnittstelle (52-2) gesendet werden, ausgestattet sind und worin die von außen gelieferten Signale alle über die erste und zweite serielle Schnittstelle (51-1, 51-2) übertragen werden.
  17. Vorrichtung nach Anspruch 12, worin die erste Datenhalteeinheit (1-1) einen ersten ROM (10-1) aufweist, der die Daten elektrisch wiedereinschreiben kann, und die zweite Datenhalteeinheit (1-2) einen zweiten ROM (10-2) aufweist, der die Daten elektrisch wiedereinschreiben kann.
  18. Vorrichtung nach Anspruch 17, die ferner in der ersten Einrichtung eine erste Schreibschnittstelle (8-1) auf einer Platine mit einer Funktion zum Wiedereinschreiben des Inhalts der Daten in dem ersten ROM (10-1) enthält, während die erste Einrichtung an einer ersten Platine montiert ist, und in der zweiten Einrichtung eine zweite Schreibschnittstelle (8-2) auf einer Platine mit einer Funktion zum Wiedereinschreiben des Inhalts der Daten in dem zweiten ROM (10-2) enthält, während die zweite Einrichtung an einer zweiten Platine montiert ist.
  19. Vorrichtung nach Anspruch 11, worin, wenn die in die einen ersten internen Bus überwachende Einheit (4-1) geschriebenen Daten und/oder die in die einen zweiten internen Bus überwachende Einheit (4-2) geschriebenen Daten nach außen gesendet werden, dem von außen gelieferten Signal durch Verwenden eines vorbestimmten Paßwortes eine Sicherheitsfunktion verliehen wird.
  20. Verfahren zum Testen eines Mikrocontrollers, mit den Schritten: Zusammensetzen einer wiedereinschreibbare Daten haltenden Einheit (1) zum Halten beliebiger Daten, einer Schreibschnittstelle mit einer Funktion zum Wiedereinschreiben des Inhalts von Daten in der Datenhalteeinheit, einer Verarbeitungseinheit (2) zum Betreiben eines Mikrocontrollers und Verarbeiten der beliebigen Daten, einer Schnittstelleneinheit (5) für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und sie zu verarbeiten, und einer einen internen Bus überwachenden Einheit (4) zum Überwachen des Zustands eines internen Busses in eine Einrichtung; welches Verfahren gekennzeichnet ist durch die Schritte: Schreiben des Zustands des internen Busses zu der Zeit, wenn der Mikrocontroller betrieben wird, in die einen internen Bus überwachende Einheit (4) auf der Basis eines Steuersignals, das aus den von außen gelieferten Signal herausgenommen wurde; und Eingeben der in die einen internen Bus überwachende Einheit (4) geschriebenen Daten in die Datenhalteeinheit (1) oder Senden der Daten nach außen.
  21. Verfahren zum Testen eines Mikrocontrollers, mit den Schritten: Zusammensetzen, in eine Einrichtung, einer ersten wiedereinschreibbare Daten haltenden Einheit (1-1) zum Halten beliebiger Daten, einer ersten Schreibschnittstelle mit einer Funktion zum Wiedereinschreiben des Inhalts von Daten in der ersten Datenhalteeinheit (1-1), einer ersten Verarbeitungseinheit (2-1) zum Verarbeiten der beliebigen Daten durch Betreiben eines Mikrocontrollers, einer ersten Schnittstelleneinheit (5-1) für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und sie zu verarbeiten, und einer einen ersten internen Bus überwachenden Einheit (4-1) zum Überwachen des Zustands eines ersten internen Busses; Zusammensetzen, in eine zweite Einrichtung, einer zweiten wiederbeschreibbare Daten haltenden Einheit (1-2) zum Halten beliebiger Daten, einer zweiten Schreibschnittstelle mit einer Funktion zum Wiedereinschreiben des Inhalts von Daten in der zweiten Datenhalteeinheit (1-2), einer zweiten Verarbeitungseinheit (2-2) zum Verarbeiten der beliebigen Daten durch Betreiben des Mikrocontrollers, einer zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation, um die von außen gelieferten Signale zu empfangen und sie zu verarbeiten, und einer einen zweiten internen Bus überwachenden Einheit (4-2) zum Überwachen des Zustands eines zweiten internen Busses; welches Verfahren gekennzeichnet ist durch die Schritte: Übertragen, innerhalb der ersten Einrichtung, der von außen gelieferten Signale zu der zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation über die erste Schnittstelleneinheit (5-1) für eine externe Kommunikation, wenn ein Programmtest des Mikrocontrollers ausgeführt wird; Schreiben, in der zweiten Einrichtung, des Zustands des zweiten internen Busses zu der Zeit, wenn ein Programm für einen Programmtest, enthalten in den zur zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation übertragenen Signalen, betrieben wird, in die einen zweiten internen Bus überwachende Einheit (4-2); Eingeben der in die einen zweiten internen Bus überwachende Einheit (4-2) geschriebenen Daten in die einen ersten internen Bus überwachende Einheit (4-1) oder in die erste Datenhalteeinheit (1-1) in der ersten Einrichtung über die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation und über die erste Schnittstelleneinheit (5-1) für eine externe Kommunikation oder Senden der Daten nach außen; wenn ein Systemtest des Mikrocontrollers ausgeführt wird, Trennen der ersten Einrichtung von der zweiten Einrichtung, Schreiben, in der zweiten Einrichtung, des Zustandes des zweiten internen Busses zu der Zeit, wenn ein Programm für einen Systemtest, enthalten in den in die zweite Datenhalteeinheit (1-2) geschriebenen Signalen, betrieben wird, in die einen zweiten internen Bus überwachende Einheit (4-2) über die zweite Schnittstelleneinheit (5-2) für eine externe Kommunikation und Auslesen der in die einen zweiten internen Bus überwachende Einheit (4-2) geschriebenen Daten aus der zweiten Schnittstelleneinheit (5-2) für eine externe Kommunikation.
DE69915788T 1998-12-28 1999-12-22 Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung Expired - Lifetime DE69915788T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP37452098 1998-12-28
JP37452098A JP3736980B2 (ja) 1998-12-28 1998-12-28 マイクロコントローラの評価装置および評価方法

Publications (2)

Publication Number Publication Date
DE69915788D1 DE69915788D1 (de) 2004-04-29
DE69915788T2 true DE69915788T2 (de) 2004-09-23

Family

ID=18503991

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69915788T Expired - Lifetime DE69915788T2 (de) 1998-12-28 1999-12-22 Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung

Country Status (4)

Country Link
US (1) US6598176B1 (de)
EP (1) EP1016969B1 (de)
JP (1) JP3736980B2 (de)
DE (1) DE69915788T2 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754852B2 (en) * 2000-03-02 2004-06-22 Texas Instruments Incorporated Debug trigger builder
US6829727B1 (en) * 2001-01-12 2004-12-07 Metalink Corp. In-circuit emulation of single chip microcontrollers
JP2002288002A (ja) * 2001-03-26 2002-10-04 Mitsubishi Electric Corp エミュレータ装置及びエミュレーション方法
DE10119265A1 (de) 2001-04-20 2002-10-31 Infineon Technologies Ag Programmgesteuerte Einheit
EP1365325B1 (de) * 2002-05-23 2011-01-19 Infineon Technologies AG Anordnung zur In-Circuit-Emulation einer programmgesteuerten Einheit
JP2009093484A (ja) * 2007-10-10 2009-04-30 Sumitomo Wiring Syst Ltd 電子ユニット
CN105389213A (zh) * 2015-10-26 2016-03-09 珠海格力电器股份有限公司 一种数据中心系统及其配置方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5053949A (en) * 1989-04-03 1991-10-01 Motorola, Inc. No-chip debug peripheral which uses externally provided instructions to control a core processing unit
JPH07271629A (ja) * 1994-03-29 1995-10-20 Mitsubishi Electric Corp マイクロコンピュータ
CN1279449C (zh) * 1994-12-28 2006-10-11 株式会社东芝 微处理器
US5860161A (en) * 1996-08-14 1999-01-12 Advanced Micro Devices, Inc. Microcontroller configured to indicate internal memory accesses externally
US5903912A (en) * 1996-08-14 1999-05-11 Advanced Micro Devices, Inc. Microcontroller configured to convey data corresponding to internal memory accesses externally
US6167536A (en) * 1997-04-08 2000-12-26 Advanced Micro Devices, Inc. Trace cache for a microprocessor-based device
US6145122A (en) * 1998-04-27 2000-11-07 Motorola, Inc. Development interface for a data processor
US6269454B1 (en) * 1998-11-06 2001-07-31 Advanced Micro Devices, Inc. Maintaining object information concurrent with data optimization for debugging

Also Published As

Publication number Publication date
EP1016969A2 (de) 2000-07-05
JP3736980B2 (ja) 2006-01-18
EP1016969A3 (de) 2001-03-21
EP1016969B1 (de) 2004-03-24
US6598176B1 (en) 2003-07-22
DE69915788D1 (de) 2004-04-29
JP2000194579A (ja) 2000-07-14

Similar Documents

Publication Publication Date Title
DE4313594C2 (de) Mikroprozessor
EP1248198B1 (de) Programmgesteuerte Einheit mit Emulations-Einheiten
DE19833208C1 (de) Integrierte Schaltung mit einer Selbsttesteinrichtung zur Durchführung eines Selbsttests der integrierten Schaltung
DE19815263C2 (de) Vorrichtung zur fehlertoleranten Ausführung von Programmen
DE10333817A1 (de) Emulationsschnittstellensystem
DE2648229A1 (de) Einschaltkreis als urlader fuer digitalrechner
DE2714805A1 (de) Datenverarbeitungssystem
DE19531653A1 (de) Einchip-Mikroprozessor mit eingebauter Selbsttestfunktion
DE4313190A1 (de) Vorrichtung und verfahren zur initialisierung einer datenschnittstelle fuer eine programmierbare steuerung
DE2461592C3 (de) Anordnung zur Durchführung von Wartungsoperationen bei einem Datenverarbeitungssystem
DE69915788T2 (de) Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung
DE19919388B4 (de) Programmprüfverfahren, Programmprüfvorrichtung und computerlesbares Aufzeichnungsmedium zum Aufzeichnen eines Zielprogramm-Prüfprogramms, das die Ablaufverfolgungsunterbrechungszeit reduzieren kann
EP0075713A2 (de) Zusätzliche Funktionseinheit in einem Mikroprozessor, Mikroprozessorsystem und Verfahren zu seinem Betrieb
DE3410497A1 (de) Rechneranordnung
DE10213009A1 (de) Verfahren zum elektronischen Testen von Speichermodulen
EP1283472A2 (de) Programmgesteuerte Einheit
EP1260905B1 (de) Programmgesteuerte Einheit
DE2842603A1 (de) Schnittstelle zwischen einem wartungsprozessor und einer mehrzahl einzeln zu pruefender funktionseinheiten eines datenverarbeitenden systems
DE4329335C2 (de) Mikrocomputer für IC-Karte
EP1283471A2 (de) Programmgesteuerte Einheit
DE102007018615A1 (de) Anordnung zur Übertragung von Informationen
DE10119265A1 (de) Programmgesteuerte Einheit
DE10303654A1 (de) Integrierte Halbleiterschaltung mit eingebauter Selbsttestfunktion und zugehöriges System
DE4223398C2 (de) Verfahren und Vorrichtung zur Programmierung von nichtflüchtigen Speichern
EP1248195B1 (de) Verbindungsprüfung zwischen einer programmgesteuerten Einheit und einer Schaltung

Legal Events

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

Owner name: FUJITSU MICROELECTRONICS LTD., TOKYO, JP

8327 Change in the person/name/address of the patent owner

Owner name: FUJITSU SEMICONDUCTOR LTD., YOKOHAMA, KANAGAWA, JP

8328 Change in the person/name/address of the agent

Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE