DE3855294T2 - Mikrorechner mit Speicher - Google Patents

Mikrorechner mit Speicher

Info

Publication number
DE3855294T2
DE3855294T2 DE3855294T DE3855294T DE3855294T2 DE 3855294 T2 DE3855294 T2 DE 3855294T2 DE 3855294 T DE3855294 T DE 3855294T DE 3855294 T DE3855294 T DE 3855294T DE 3855294 T2 DE3855294 T2 DE 3855294T2
Authority
DE
Germany
Prior art keywords
external
memory
data
internal
microcomputer
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
DE3855294T
Other languages
English (en)
Other versions
DE3855294D1 (de
Inventor
Yasuo C O Patent Divisi Iijima
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP62280212A external-priority patent/JPH01121947A/ja
Priority claimed from JP62280210A external-priority patent/JPH01121957A/ja
Application filed by Toshiba Corp filed Critical Toshiba Corp
Application granted granted Critical
Publication of DE3855294D1 publication Critical patent/DE3855294D1/de
Publication of DE3855294T2 publication Critical patent/DE3855294T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/46Test trigger logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Microcomputers (AREA)
  • Bus Control (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Storage Device Security (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf einen Programmspeichertyp-Mikrocomputer, der beispielsweise in einer IC-Karte verwendet wird.
  • Unter den jüngsten Mikrocomputern ist ein Mikrocomputer, der einen Programm-ROM, einen Arbeits-RAM und dergleichen enthält und diese Speicher und einen externen Speicher in dem gleichen Speicherraum zuordnet, bekannt. Beispielsweise wird in einem Mikrocomputer zum Zugreifen auf einen 64-kbyte-Speicherraum, wenn der Mikrocomputer einen 16-kbyte-Intern-ROM hat, ein 1-kbyte-Intern-RAM und ein 32-kbyte-Extern-Speicher verwendet, wobei diese Speicher in dem 64-kbyte-Adreßraum ohne Überlappung von ihren Adressen verteilt oder zugewiesen sind. In diesem Fall werden ein Adreß- und Datenbusse jeweils von dem ROM, dem RAM und dem externen Speicher versorgt.
  • In einem herkömmlichen Mikrocomputer werden aus einem internen ROM und RAM ausgelesene Daten direkt zu einer externen Vorrichtung ausgegeben. Aus diesem Grund werden ROM- und RAM-Inhalte einfach extern erkannt.
  • Insbesondere in einem Mikrocomputer, der in eine IC-Karte oder dergleichen eingebaut ist, für die Sicherheit von primärer Bedeutung ist, speichert ein interner ROM ein Steuerprogramm. Wenn daher die Programmdaten einfach extern erfaßt werden, leidet die Sicherheit des gesamten Systems. Zusätzlich wird eine gefälschte IC-Karte leicht hergestellt.
  • Ein neulicher Mikrocomputer umfaßt einen flüchtigen Speicher, wie beispielsweise einen RAM, als einen Arbeitsspeicher, der während einer Ausführung des Programmes notwendig ist. Ein Betrieb eines derartigen Mikrocomputers, insbesondere von allen Zellen eines RAM, kann nicht einfach bestätigt werden. Daher hat ein Mikrocomputer eine Funktion des Schreibens eines spezifischen Musters und des Verifizierens und Prüfens des Musters. Jedoch erlaubt diese Methode nicht eine perfekte Bestätigung der RAM-Operation. Wenn daher der Mikrocomputer einfach ersetzbar ist, wird zuvor ein Testprogramm des RAM in ein Programm des Mikrocomputers eingegeben, so daß der Betrieb des RAM nach Einstellung einer Vorrichtung, die den Mikrocomputer enthält, bestätigt werden kann. Als ein Ergebnis braucht der Betrieb des RAM nicht perfekt bestätigt zu werden, wenn der Mikrocomputer versandt wird.
  • Jedoch hat gemäß dem oben beschriebenen Verfahren eine Vorrichtung, die keinen Ersatz eines Mikrocomputers nach Zusammenbau erlaubt, wie beispielsweise eine IC-Karte, den folgenden Nachteil. Das heißt, selbst wenn eine Abnormalität in dem Betrieb des RAM erfaßt wird, kann der Mikrocomputer nicht ersetzt werden. Daher ist die Ausbeute von IC-Karten reduziert, und die Zuverlässigkeit von IC-Karten ist verschlechtert. Wenn daher insbesondere ein Mikrocomputer, der als ein Steuerelement einer IC-Karte verwendet wird, versandt wird oder bevor er in die IC-Karte eingegossen wird, muß der Betrieb des RAM perfekt bestätigt werden.
  • Das zum Stand der Technik zählende Dokument EP-A-0 215 464 offenbart eine integrierte Halbleiterschaltungsvorrichtung, die den Ausgang von programmierten Daten eines eingebauten Speicher-ROM zu einem ersten externen Anschluß sperrt, jedoch das Ergebnis des Vergleichs der programmierten Daten mit einem von einem zweiten externen Anschluß eingespeisten Eingangssignal ausgibt, eingegeben/ausgegeben zu dem ersten externen Anschluß. Diese integrierte Schaltungsvorrichtung hat so eine Funktion des Abschaltens eines Ausganges von programmierten Daten seines eingebauten Speicher-ROM zu dem ersten externen Anschluß. Die Abschaltfunktion wird realisiert, indem in der bekannten integrierten Halbleiterschaltungsvorrichtung kein Ausgangsanschluß für die Inhalte des eingebauten Speicher-ROM vorgesehen wird, und lediglich die Ergebnisse des Vergleichs der programmierten Daten mit dem vom Eingangsanschluß eingespeisten Eingangssignal, eingegeben/ausgegeben zu dem ersten externen Anschluß, kann ausgegeben werden. Der eingebaute oder interne Speicher-ROM, RAM der bekannten integrierten Halbleiterschaltungsvorrichtung ist mit einer I/O- bzw. Eingabe/Ausgabe-Einheit über einen Bus verbunden. Aus diesem Grund können die Inhalte dieses internen Speicher-ROM, RAM bekannt sein durch Überwachen der I/O-Einheit zu der Zeit des internen Zugriffes.
  • Weiterhin beschreibt das zum Stand der Technik zählende Dokument EP-A-0 136 155 einen Einzelchip- Mikrocomputer mit einer Einrichtung zum Verhindern eines Auslesens von dessen internem ROM. Dieser Einzelchip-Mikrocomputer ist mit einem externen Speicher zum Ausdehnen von dessen Adreßraum verbindbar. Der Mikrocomputer hat einen ersten Betriebsmodus, in welchem der verfügbare Speicherbereich der Bereich eines internen ROM und Teil des externen Speichers ist, und einen zweiten Betriebsmodus, in welchem der verfügbare Speicherbereich der gesamte externe Speicher ist. Der Mikrocomputer umfaßt eine Sperreinrichtung zum Sperren des Schaltens von dem zweiten Modus zu dem ersten Modus, um so sicherzustellen, daß Inhalte des internen ROM 4 nicht ausgelesen werden können. Somit zeigt dieses zum Stand der Technik zählende Dokument den Einzelchip-Mikrocomputer mit einer CPU, die auf den internen ROM und den externen ROM beide zugreift. In einem ersten Betriebsmodus werden der interne und der externe ROM beide verwendet, und in einem zweiten Betriebsmodus wird lediglich der externe ROM verwendet. Die Sperreinrichtung ist vorgesehen, um das Schalten von dem zweiten Betriebsmodus zu dem ersten Betriebsmodus zu sperren, so daß die Inhalte des internen ROM nicht ausgelesen werden können. Jedoch können in dem ersten Betriebsmodus dieses bekannten Einzelchip-Mikrocomputers die Inhalte des internen ROM extern von einem Schnittstellen-Port ausgegeben werden, da dieser Schnittstellen-Port auch freigegeben ist, wenn der interne ROM freigegeben ist. Weiterhin ist in dem zweiten Betriebsmodus der Ausgang der Inhalte des internen ROM nicht gesperrt, vielmehr ist lediglich der Zugriff des internen ROM gesperrt.
  • Es ist eine Aufgabe der vorliegenden Erfindung, einen Mikrocomputer vorzusehen, der eine einfache externe Bestätigung eines Betriebes eines internen flüchtigen Speicherabschnittes erlaubt, ohne ein Testprogramm in dessen Programm zuvor einzugeben, der einen Betrieb verhindert, bei dem Inhalte und dergleichen der internen Verarbeitung leicht extern erkannt werden, und der optimal für eine Verwendung in einer Vorrichtung ist, in der Sicherheit von primärer Bedeutung ist.
  • Zur Lösung dieser Aufgabe sieht die vorliegende Erfindung einen Mikrocomputer vor, wie dieser im Patentanspruch angegeben ist.
  • Der Mikrocomputer umfaßt insbesondere einen Speicher zum Speichern von Daten, eine Speicherzugriffschaltung zum Zugreifen des Speichers und einen Zweirichtungspuffer zum Blockieren oder Sperren eines externen Ausganges der Daten, abgeleitet von einer Zugriffoperation in Abhängigkeit von dem Speicherzugriff.
  • Andere Aufgaben und Merkmale der vorliegenden Erfindung werden aus der folgenden Beschreibung im Zusammenhang mit den begleitenden Figuren ersichtlich, in welchen:
  • Fig. 1 ein Blockdiagramm ist, das einen Mikrocomputer nach einem Ausführungsbeispiel der vorliegenden Erfindung zeigt,
  • Fig. 2 ein Blockdiagramm ist, das eine Anordnung zeigt, wenn der in Fig. 1 dargestellte Mikrocomputer mit einem externen Speicher verbunden ist, und
  • Fig. 3 ein Blockdiagramm ist, das eine Verbindungsbeziehung zwischen einer Testeinheit und dem in Fig. 1 dargestellten Mikrocomputer in einem Testmodus zeigt.
  • Fig. 1 ist ein Blockdiagramm eines Mikrocomputers der vorliegenden Erfindung.
  • Der Mikrocomputer 1 umfaßt externe Busse 31, 32, 33 und 34. Der externe Bus 31 ist ein Eingangs/Ausgangs-Datenbus. Beispielsweise überträgt, wie in den Fig. 2 und 3 gezeigt ist, der externe Bus 31 von einer externen Einheit, wie beispielsweise einem externen Speicher 40 oder Testeinheit 50, die mit diesem Mikrocomputer 1 verbunden ist, eingespeiste Daten zu einem internen Eingangs/Ausgangs-Datenbus 22. Der Bus 31 überträgt auch von dem internen Eingangs/Ausgangs-Datenbus 22 eingespeiste Daten zu der externen Einheit. Der externe Bus 32 ist ein Adreßbus zum Übertragen von Adreßdaten, die von der externen Einheit eingespeist sind, zu dem internen Adreßbus 21, und der Adreßdaten, die von dem internen Adreßbus eingespeist sind, zu der externen Einheit. Der externe Bus 33 ist ein Zugriffsteuerbus zum Übertragen von Zugriffsignalen (Lesefreigabe-(RE)Signal, Schreibfreigabe-(WE)Signal und dergleichen), die von der externen Einheit zu dem internen Zugriffsteuerbus 23 gespeist sind. Der externe Bus 34 überträgt ein Zugriffsignal, das von einem weiter unten beschriebenen Zugriffsignaldecoder 11 ausgegeben ist, zu der externen Einheit. Ein Zweirichtungspuffer 7 liegt zwischen den externen Bussen 33 und 34 sowie einer Signalleitung 41, einem internen Zugriffsteuerbus 23 und der Puffersteuersignalleitung 43. Ein Zweirichtungspuffer 8 liegt zwischen dem externen Adreßdatenbus 32 sowie dem internen Adreßbus 21 und der Puffersteuerleitung 45. Ein Zweirichtungspuffer 9 liegt zwischen dem externen Eingangs/Ausgangs-Datenbus 31 und dem internen Datenbus 22 sowie der Puffersteuersignalleitung 47. Diese Zweirichtungspuffer 7, 8 und 9 sind durch Kombinieren von beispielsweise zwei Bustreibern gebildet, um jeweils Datenübertragungsrichtungen zu steuern.
  • Eine Zugriffsignalleitung 41, die mit dem Zweirichtungspuffer 7 verbunden ist, ist auch an einen Zugriffsignaldecoder 11 und einen Puffercontroller 10 angeschlossen. Der interne Zugriffsteuerbus 23, der mit dem Zweirichtungspuffer 7 verbunden ist, ist auch an den Steuerabschnitt 2, den Zugriffsignaldecoder 11 und den Puffercontroller 10 angeschlossen. Der interne Adreßbus 21, der mit dem Zweirichtungspuffer 8 verbunden ist, ist an den Steuerabschnitt 2, den Programmspeicher 3, den Zugriffsignaldecoder 11 und den Arbeitsspeicher 4 angeschlossen. Der interne Datenbus 22, der mit dem Zweirichtungspuffer 9 verbunden ist, ist an den Steuerabschnitt 2, den Programmspeicher 3, den Arbeitsspeicher 4 und einen Vergleicher 12 angeschlossen. Puffersteuersignalleitungen 43, 45 und 47 der Zweirichtungspuffer 7, 8 und 9 sind mit dem Puffercontroller 10 verbunden. Der Programmspeicher 3, der durch einen Masken-ROM gebildet ist, ist mit dem Steuerabschnitt 2 über den internen Adreßbus 21 und den internen Datenbus 22 verbunden und speichert ein Programm, das durch den Steuerabschnitt 2 auszuführen ist. Der Arbeitsspeicher 4, der durch einen Randomspeicher gebildet ist, ist mit dem Steuerabschnitt 2 über den internen Adreßbus 21 und den internen Datenbus 22 verbunden und wird als ein Arbeitsbereich verwendet, wenn der Steuerabschnitt 2 ein Datenverarbeiten ausführt. Der Zugriffsignaldecoder 11 ist mit dem Steuerabschnitt 2 über den internen Adreßbus 21 und den internen Zugriffsteuerbus 23 verbunden, um ein Zugriffsignal für Programm, Arbeiten oder einen externen Speicher 3, 4 oder 40 abhängig von Adreßdaten oder einem Adreßsignal zu erzeugen, das von dem Steuerabschnitt 2 eingespeist ist. Das Zugriffsignal, das von dem Zugriffsignaldecoder 11 ausgegeben ist, wird auch zu dem Puffercontroller 10 gespeist. Der Puffercontroller 10 ist mit dem Zugriffsignaldecoder 11 und dem Steuerabschnitt 2 verbunden, um interne Zugriffsteuerdaten, die von dem Steuerabschnitt 2 eingespeist sind, und ein Zugriffsignal, das von dem Zugriffsignaldecoder 11 ausgegeben ist, zu empfangen. Dann bestimmt der Puffercontroller 10, daß das Signal ein internes oder externes Zugriffsignal ist, und steuert Richtungen der Zweirichtungspuffer 7, 8 und 9 gemäß dem Bestimmungsergebnis. Wenn beispielsweise der Steuerabschnitt 2 durch Lesen auf den Programmspeicher 3 oder den Arbeitsspeicher 4 zugreift, steuert der Puffercontroller 10 die Richtungen der Zweirichtungspuffer 7, 8 und 9, um einen externen Ausgang der ausgelesenen Daten abzuschalten. Wenn der Steuerabschnitt 2 durch Schreiben auf den externen Speicher 40 zugreift, steuert der Puffercontroller 10 die Richtungen der Zweirichtungspuffer 7, 8 und 9, um eine Datenübertragung von der internen zu der externen Busseite zu ermöglichen. Wenn der Steuerabschnitt 2 durch Lesen auf den externen Speicher 40 zugreift, sind die Richtungen der Zweirichtungspuffer 7 und 8 gesteuert, um eine Datenübertragung in den gleichen Richtungen wie diejenigen in einem Schreibzugriffmodus freizugeben, und die Richtung des Puffers 9 ist gesteuert, um eine Datenübertragung in der entgegengesetzten Richtung zu derjenigen im Schreibzugriffmodus freizugeben. Der Vergleicher 12 ist mit den externen und internen Eingangs/Ausgangs-Datenbussen 31 und 22 verbunden, um Daten auf den Datenbussen miteinander zu vergleichen. Das Vergleichsergebnis wird zu dem externen Bus 36 über den Bustreiber 13 ausgegeben und zu einer Nichtübereinstimmungsschaltung 14 gespeist. Die Nichtübereinstimmungsschaltung 14 zählt Nichtübereinstimmungsergebnisse vom Vergleicher 12. Wenn die Anzahl der Nichtübereinstimmungsergebnisse eine vorbestimmte Zahl erreicht, wird ein Übertragsignal zu einer Testmodus-Erlaubnisschaltung 6 gespeist. Die Testmodus-Erlaubnisschaltung 6 ist mit einer Testmodus- Einstellschaltung 5 verbunden.
  • Die Testmodus-Einstellschaltung 5 empfängt ein Testmodus-Einstellsignal 35, das extern zu dem Mikrocomputer 1 eingespeist ist, und liefert ein Testmodussignal 25 zu der Testmodus-Erlaubnisschaltung 6. Die Testmodus-Einstellschaltung 5 ist durch beispielsweise eine Flip-Flop-Gruppe, eine Datenverriegelungsschaltung und einen Vergleicher gebildet. Die Datenverriegelungsschaltung speichert ein spezifisches Bitmuster. Ein Operator gibt bit-seriell ein spezifisches Bitmuster als das Testmodus-Einstellsignal 35 ein. Als ein Ergebnis wird das seriell eingegebene Bitmuster durch die Flip-Flop-Gruppe verriegelt. Dann wird das durch die Flip-Flop-Gruppe abhängig von einem Triggersignal verriegelte Bitmuster mit dem Bitmuster, das in der Datenverriegelungsschaltung gespeichert ist, durch den Vergleicher verglichen. Wenn als ein Vergleichsergebnis die Muster miteinander übereinstimmen, wird ein Übereinstimmungssignal zu der Testmodus-Erlaubnisschaltung 6 als ein Testmodus-Einstellsignal 25 gespeist. Die Testmodus-Erlaubnisschaltung wird durch beispielsweise Gatter gebildet. Wenn ein Übertragsignal von der Nichtübereinstimmungsschaltung 14 eingespeist ist, sperrt die Schaltung 6 einen Ausgang des Testmodus-Steuersignales 27 zu dem Steuerabschnitt 2 oder dergleichen. Das heißt, da ein Bediener, der legal einen Test dieses Mikrocomputers 1 durchführt, die Inhalte des Programmspeichers 3 kennen muß, stellt ein Vergleichsergebnis des Vergleichers 12 eine "Übereinstimmung" dar. Wenn das Vergleichsergebnis eine "Nicht-Übereinstimmung" einer vorbestimmten Anzahl oder mehr darstellt, wird bestimmt, daß eine dritte Partei illegal versucht, den Programmspeicher 3 zu lesen, und ein Teststeuersignal 27 wird nicht zu dem Steuerabschnitt 2 und Puffercontroller 10 gespeist. Da als ein Ergebnis der Mikrocomputer nicht in einen Testmoduszustand gesetzt werden kann (ein Ausgangssignal vom Steuerabschnitt 2 zum internen Eingangs/Ausgangs- Datenbus 22 ist in einen Hochimpedanzzustand gesetzt), können die Inhalte des Programmspeichers 3 nicht weiter gelesen werden.
  • Fig. 2 zeigt einen Verbindungszustand, wenn der Mikrocomputer 1 mit der obigen Anordnung normal verwendet wird (das heißt nicht in einem Testmodus). Der Mikrocomputer 1 ist mit dem externen Speicher 40 über den externen Zugriffsignalbus 34, den externen Adreßdatenbus 32 und den externen Eingangs/Ausgangs-Datenbus 31 verbunden.
  • Eine Schreiboperation in dem Fall, in welchem der Mikrocomputer 1 auf den externen Speicher 40 zugreift, wird im folgenden beschrieben. Der Steuerabschnitt 2 gibt Adreßdaten zum Adressieren des externen Speichers 40 auf dem internen Adreßbus 21 aus und liefert ein Schreibfreigabesignal (WE), das darstellt, daß auf den externen Speicher 40 auf dem internen Zugriffsteuerbus 23 zugegriffen wird. Als ein Ergebnis wird das Schreibfreigabesignal (WE) zu dem Zweirichtungspuffer 7 über den internen Zugriffsteuerbus 23 gespeist. Zusätzlich empfängt der Zugriffsignaldecoder 11 Adreß- und Zugriffsteuerdaten auf dem internen Adreßbus 21 und decodiert diese, um ein externes Speicherfreigabesignal (ein Signal, das eine externe Speichervorrichtung darstellt, auf die zugegriffen wird) zu erzeugen und das Signal zu dem Zweirichtungspuffer 7 über den internen Zugriffsignalbus 41 zu speisen. Adreßdaten für den externen Speicher 40 werden zu dem Zweirichtungspuffer 8 über den internen Adreßbus 21 gespeist. Wenn zusätzlich auf den externen Speicher 40 in einem Schreibmodus zugegriffen wird, werden Schreibdaten zu dem Zweirichtungspuffer 9 von dem Steuerabschnitt 2 über den internen Eingangs/Ausgangs-Datenbus 22 gespeist. Andererseits empfängt der Puffercontroller 10 Zugriffsteuerdaten, die darstellen, daß auf den externen Speicher 40 im Schreibmodus durch den internen Zugriffsteuerbus 23 zugegriffen wird. Als ein Ergebnis speist der Puffercontroller 10 die Daten zu den Zweirichtungspuffern 7, 8 und 9 über Puffersteuersignalbusse 43, 45 und 47, um Richtungen der Zweirichtungspuffer 7, 8 und 9 zu steuern, damit eine Datenübertragung von der internen zur externen Busseite ermöglicht wird. Zugriff-, Adreß- und Schreibdaten werden zum externen Speicher 40 über jeweils externe Busse 34, 32 und 31 gespeist.
  • Fig. 3 ist ein Blockdiagramm, das einen Verbindungszustand nach einem Test des Mikrocomputers 1 zeigt. Der Mikrocomputer 1 ist mit der Testeinheit 50 über den externen Zugriffsignalbus 33, den externen Adreßdatenbus 32, den externen Eingangs/Ausgangs-Datenbus 31, den externen Vergleichsergebnis-Ausgangsbus 36 und den Testmodus-Einstellsignalbus 35 verbunden.
  • Ein Testverfahren der Programm- und Arbeitsspeicher 3 und 4 wird im folgenden beschrieben.
  • Zunächst speist die Testeinheit 50 ein Testmodus- Einstellsignal zu der Testmodus-Einstellschaltung 5 des Mikrocomputers 1 über den Testmodus-Einstellsignalbus 35. Dieses Testmodus-Einstellsignal 35 hat ein spezifisches Bitmuster, das lediglich einem legalen Bediener bekannt ist. Die Testmodus-Einstellschaltung 5 vergleicht das Bitmuster des eingespeisten Testmodus-Einstellsignales 35 mit dem zuvor gespeicherten Bitmuster. Wenn beide Muster nicht miteinander übereinstimmen, wird das Testmodussignal 25 zu der Testmodus-Erlaubnisschaltung 6 gespeist. Wenn eine Übereinstimmung erfaßt wird, wird das Signal 25 geliefert. Die Testmodus-Erlaubnisschaltung 6 bestimmt, ob ein Übertragsignal von der Nichtübereinstimmungsschaltung 14 eingespeist ist oder nicht. Wenn das Übertragsignal nicht eingespeist ist, wird das Teststeuersignal 27 zum Puffercontroller 10 und zum Steuerabschnitt 2 gespeist. Wenn andererseits das Übertragsignal von der Nichtübereinstimmungsschaltung 14 eingespeist ist, wird das Teststeuersignal 27 nicht zum Puffercontroller 10 und Steuerabschnitt 2 gespeist. Daher kann eine illegale Verwendung durch eine dritte Partei verhindert werden. Das heißt, wenn ein von der Testmodus-Erlaubnisschaltung 6 eingespeistes Testmodussignal abgeschaltet wird, steuert der Puffercontroller 10 die Richtungen der Zweirichtungspuffer 7, 8 und 9, um eine Datenübertragung von der externen zur internen Busseite zu ermöglichen. Zusätzlich wird ein Dreizustandsgatter 13 abgeschaltet. Ein Fall, in welchem ein im Programmspeicher 3 gespeichertes Programm geprüft wird, wird im folgenden beschrieben. In diesem Fall speist die Testeinheit 50 Zugriffdaten, die einen Lesezugriff darstellen, zum Zweirichtungspuffer 7 über den externen Zugriffbus 33 und liefert zum Zweirichtungspuffer 8 auszulesende Adreßdaten des Programmspeichers 33 über den externen Adreßdatenbus 32.
  • Andererseits wird das von der Testmodus- Erlaubnisschaltung 6 ausgegebene Teststeuersignal 27 zum Steuerabschnitt 2 und Puffercontroller 10 gespeist.
  • Als ein Ergebnis erfaßt der Steuerabschnitt 2, daß der Mikrocomputer 1 in einen Testmodus gesetzt ist. Dann speist der Steuerabschnitt 2 kein aktives Signal zu den Bussen 21, 22 und 23. Der Puffercontroller 10 steuert die Richtung der Zweirichtungspuffer 7 und 8, um eine Datenübertragung von der externen zur internen Busseite freizugeben. Als ein Ergebnis wird ein Testzugriffsignal zu dem Zugriffsignaldecoder 11 und Programmspeicher 3 vom Zweirichtungspuffer 7 über den internen Zugriffsteuerbus 23 gespeist. Zusätzlich werden Adreßdaten zum Programmspeicher 3 und zum Zugriffsignaldecoder 11 vom Zweirichtungspuffer 8 über den internen Adreßbus 21 gespeist. Der Zugriffsignaldecoder 11 erzeugt ein Zugriffsignal gemäß den eingespeisten Zugriffdaten und speist das Signal zum Programmspeicher 3. Programmdaten werden von einer bezeichneten Adresse im Programmspeicher 3 ausgelesen. Das durch den Zugriffsignaldecoder 11 erzeugte Zugriffsignal wird zum Puffercontroller 10 gespeist. Daher steuert der Puffercontroller 10, um den Puffer 9 abzuschalten.
  • Die ausgelesenen Programmdaten werden zum Eingangsanschluß A des Vergleichers 12 über den internen Datenbus 22 gespeist. Andererseits speist die Testeinheit 50 korrekte Programmdaten zum Eingangsanschluß B des Vergleichers 12 über den externen Eingangs/Ausgangs-Datenbus 31. Der Vergleicher 12 vergleicht die zum Eingangsanschluß A gespeisten Programmdaten mit denjenigen, die zum Eingangsanschluß B geliefert sind, und gibt das Vergleichsergebnis zur Testeinheit 50 über den Bustreiber 13 und den externen Vergleichsbus 36 ab. Als ein Ergebnis kann die Testeinheit 50 beliebige Daten im Programmspeicher 33 mit den von der Testeinheit 50 eingespeisten Daten vergleichen und auf das Vergleichsergebnis Bezug nehmen.
  • Daher können die Inhalte der Daten im Programmspeicher 3 bestätigt werden, ohne direkt ausgegeben zu sein.
  • Das Vergleichsergebnis des Vergleichers 12 wird zur Nichtübereinstimmungsschaltung 14 gespeist. Die Nichtübereinstimmungsschaltung 14 zählt ein Nichtübereinstimmungssignal. Wenn die Anzahl der Nichtübereinstimmungssignale eine vorbestimmte Zahl erreicht, wird ein Übertragsignal zur Testmodus-Erlaubnisschaltung 6 gespeist. Wenn als ein Ergebnis Nichtübereinstimmung mehrmals fortdauert, wird bestimmt, daß eine dritte Partei gerade illegal den Mikrocomputer verwendet, und ein Testmodussignal wird abgeschaltet.
  • Ein Testverfahren des Arbeitsspeichers 4 wird unten beschrieben.
  • Die Testeinheit 50 speist das Testmodus-Einstellsignal 35 zur Testmodus-Einstellschaltung 5 des Mikrocomputers 1 in der gleichen Weise wie im Programmspeicher 3. Die Testeinheit 50 speist ein Zugriffsignal für den Arbeitsspeicher 4 zum Zweirichtungspuffer 7 über den externen Zugriffbus 33 und liefert Adreßdaten des Arbeitsspeichers 4 zum Zweirichtungspuffer 8 über den externen Adreßbus 32. Zusätzlich speist die Testeinheit 50 Schreibdaten zum Arbeitsspeicher 4 zum Zweirichtungspuffer 9 über den externen Eingangs/Ausgangs- Datenbus 31. Andererseits wird das Teststeuersignal 27 zum Steuerabschnitt 2 über die Testmodus-Erlaubnisschaltung 6 gespeist. Als ein Ergebnis speist der Steuerabschnitt 2 nicht ein aktives Signal zu den Bussen 21, 22 und 23. Der Puffercontroller 10 steuert die Richtungen der Zweirichtungspuffer 7 und 8, um eine Datenübertragung von der externen zur internen Busseite freizugeben. Ein Schreibzugriffsignal für den Arbeitsspeicher 4 wird zum Zugriffsignaldecoder 11 und Arbeitsspeicher 4 vom Zweirichtungspuffer 7 über den internen Bus 23 gespeist. Eine Schreibadresse für den Arbeitsspeicher 4 wir zum Arbeitsspeicher 4 vom Zweirichtungspuffer 8 gespeist. Da der Zweirichtungspuffer 9 gesteuert ist, um eine Datenübertragung von der externen zur internen Busseite abhängig von dem Signal 47 vom Puffercontroller 10 freizugeben, werden Schreibdaten zum Arbeitsspeicher 4 gespeist. Der Zugriffsignaldecoder 11 erzeugt ein Zugriffsignal auf der Grundlage der gelieferten Zugriffdaten und speist das Signal zum Arbeitsspeicher 4. Als ein Ergebnis werden die von der Testeinheit 50 gelieferten Daten in die bezeichnete Adresse des Arbeitsspeichers 4 geschrieben.
  • Die Testeinheit 50 speist dann Adreßdaten und ein Lesezugriffsignal zu entsprechenden internen Bussen 21 und 23 in der gleichen Weise wie in einem Schreibmodus. Daher werden die Leseadreßdaten zum Arbeitsspeicher 4 gespeist, und Lesezugriffdaten werden zum Zugriffsignaldecoder 11 und Arbeitsspeicher 4 gespeist. Dann liefert der Zugriffsignaldecoder 11 ein Zugriffsignal zum Arbeitsspeicher 4 und zum Puffercontroller 10. Als ein Ergebnis erfaßt der Puffercontroller 10, daß das Lesezugriffsignal von der Testeinheit 50 ausgegeben ist, und steuert die Richtung des Zweirichtungspuffers 9, um eine Datenübertragung von der internen zur externen Busseite freizugeben. Daher werden die von der bezeichneten Adresse des Arbeitsspeichers 4 ausgegebenen Daten zur Testeinheit 50 über den externen Bus 31 gespeist, um so die Daten einer willkürlichen Adresse des Arbeitsspeichers 4 zu lesen. Schreib- und Leseoperationen, wie oben beschrieben, werden in geeigneter Weise durch die Testeinheit 50 durchgeführt, so daß der Arbeitsspeicher 4 geprüft werden kann.
  • Ein Fall, in welchem ein interner Zugriff durchgeführt wird, das heißt, in welchem der Steuerabschnitt 2 auf den Programmspeicher 3 oder den Arbeitsspeicher 4 zugreift, wird im folgenden beschrieben. In einem Lesemodus speist der Steuerabschnitt 2 eine Adresse zum Programmspeicher 3 oder Arbeitsspeicher 4 über den internen Adreßbus 21. In einem Schreibmodus werden Schreibdaten zum Arbeitsspeicher 4 gespeist. Zusätzlich informiert der Steuerabschnitt 2, daß ein interner Lesezugriff oder ein interner Schreibzugriff auf den Zugriffsignaldecoder 11 durch den internen Zugriffsteuerbus 23 durchgeführt ist. Als ein Ergebnis informiert der Zugriffsignaldecoder 11, daß der interne Zugriff zum Puffercontroller 10 durchgeführt ist. Der Puffercontroller 10 steuert die Zweirichtungspuffer 8 und 9, um eine Datenübertragung zwischen den entsprechenden externen und internen Bussen abzuschalten, so daß die vom Steuerabschnitt 2 ausgegebene Adresse und die aus dem Programm- oder Arbeitsspeicher 3 oder 4 ausgelesenen Daten nicht extern ausgegeben werden können. Als ein Ergebnis werden die von dem Steuerabschnitt 2 ausgegebenen Adreßdaten und die von dem Steuerabschnitt 2 oder den Speichern 3 und 4 ausgegebenen Daten nicht zum externen Speicher 40 gespeist.
  • Wenn auf den externen Speicher 40 durch den Steuerabschnitt 2 zugegriffen wird, werden Zugriffsignale und Adreßdaten zu den internen Bussen 21 und 23 vom Steuerabschnitt 2 gespeist. Da der Zugriffsignaldecoder 11 ein Zugriffsignal für den externen Speicher 40 auf der Grundlage des Zugriffsignales und der Adreßdaten erzeugt, empfängt der Puffercontroller 10 das erzeugte Zugriffsignal, und das zu dem internen Bus 23 gespeiste Zugriffsignal, um so zu bestimmen, daß der Zugriff extern durchgeführt wird. Daher steuert der Puffercontroller 10 die Richtungen der Zweirichtungspuffer 7 und 8, um eine Datenübertragung von der internen zur externen Busseite freizugeben. Zusätzlich ist in einem Lesezugriffmodus die Richtung des Zweirichtungspuffers 9 gesteuert, um eine Datenübertragung von der externen zur internen Busseite freizugeben. In einem Schreibzugriffmodus wird die Richtung des Zweirichtungspuffers 9 gesteuert, um eine Datenübertragung von der internen zur externen Busseite freizugeben. Daher kann der Steuerabschnitt 2 auf den externen Speicher 40 zugreifen.
  • Wenn, wie oben beschrieben ist, der Mikrocomputer 1 in einen Testmodus gesetzt ist und auf den Programmspeicher durch Lesen zugegriffen wird, werden vom Programmspeicher 3 ausgelesene Daten nicht extern ausgegeben. Die ausgelesenen Daten werden mit den Daten von der Testeinheit 50 durch den internen Vergleicher 12 verglichen, und das Vergleichsergebnis wird zur Testeinheit 50 ausgegeben, um dadurch die Übereinstimmung zwischen beiden Daten zu prüfen. Selbst wenn daher in einen Testmodus gesetzt ist, werden die Inhalte des Programmspeichers 3 nicht direkt und extern ausgegeben, um so eine einfache Verifizierung der Daten durch lediglich einen Bediener zu erlauben, der das Programmuster kennt.

Claims (1)

  1. Mikrocomputer (1) mit:
    - einer Speichereinrichtung (3, 4) zum Speichern von Daten, wobei die Speichereinrichtung (3, 4) einen Programmspeicher (3) und einen Datenspeicher (4) umfaßt,
    - einer Speicherzugriffeinrichtung (2, 11) zum Zugreifen auf die Speichereinrichtung (3, 4),
    - einer Eingangs/Ausgangseinrichtung (9) zum Eingeben und Ausgeben von Daten von und zu einer zu dem Mikrocomputer externen Vorrichtung (40, 50),
    - einer Steuereinrichtung (10) zum Steuern der Richtung der Datenübertragung der Eingangs/Ausgangseinrichtung,
    wobei der Mikrocomputer einen normalen Betriebsmodus und einen Testbetriebsmodus hat, wobei
    (a) im normalen Betriebsmodus
    - die Steuereinrichtung (10) die Eingangs/Ausgangseinrichtung (9) steuert, um eine externe Ausgabe der von einer Zugriffoperation zu der Speichereinrichtung (3, 4) durch die Speicherzugriffeinrichtung (2, 11) abgeleiteten Daten abzuschalten, und wobei
    (b) im Testmodusbetrieb in den Testmodus eingetreten wird, wenn ein Testmodussignal durch eine Erlaubnisschaltung (6) eingespeist ist, die eine gültige Anforderung für einen Testmodus von einer externen Testeinheit (50) empfangen hat,
    - die Speicherzugriffeinrichtung (2, 11) einen Betrieb stoppt, wenn sie das Testmodussignal empfängt, so daß die Speicherzugriffeinrichtung im Testmodus inaktiv wird, und
    - die Steuereinrichtung (10) den Testmodus des Betriebes erfaßt, wenn sie das Testmodussignal empfängt, die Eingangs/Ausgangseinrichtung (9) abschaltet, wenn auf den Programmspeicher (3) durch Lesen von der externen Testeinheit (50) zugegriffen wird, und die Eingangs/Ausgangseinrichtung (9) freigibt, um Daten vom Mikrocomputer zu der externen Testeinheit zu übertragen, wenn auf den Datenspeicher (4) durch Lesen von der externen Testeinheit zugegriffen wird.
DE3855294T 1987-11-05 1988-11-04 Mikrorechner mit Speicher Expired - Lifetime DE3855294T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP62280212A JPH01121947A (ja) 1987-11-05 1987-11-05 マイクロコンピュータ
JP62280210A JPH01121957A (ja) 1987-11-05 1987-11-05 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
DE3855294D1 DE3855294D1 (de) 1996-06-20
DE3855294T2 true DE3855294T2 (de) 1996-10-31

Family

ID=26553680

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3855294T Expired - Lifetime DE3855294T2 (de) 1987-11-05 1988-11-04 Mikrorechner mit Speicher

Country Status (5)

Country Link
US (1) US5089951A (de)
EP (1) EP0315209B1 (de)
KR (1) KR920001283B1 (de)
DE (1) DE3855294T2 (de)
HK (1) HK1003014A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885679A (en) * 1987-12-21 1989-12-05 Bull Hn Information Systems Inc. Secure commodity bus
US5418933A (en) * 1990-02-20 1995-05-23 Sharp Kabushiki Kaisha Bidirectional tri-state data bus buffer control circuit for delaying direction switching at I/O pins of semiconductor integrated circuit
US5072138A (en) * 1990-08-17 1991-12-10 Sgs-Thomson Microelectronics, Inc. Semiconductor memory with sequential clocked access codes for test mode entry
US5247621A (en) * 1990-09-26 1993-09-21 Advanced Micro Devices, Inc. System and method for processor bus use
DE69124946T2 (de) * 1990-11-30 1997-09-18 Ibm Bidirektionaler FIFO-Puffer zur Schnittstellenbildung zwischen zwei Bussen
US5276808A (en) * 1991-02-04 1994-01-04 International Business Machines Corporation Data storage buffer system and method
EP0506060B1 (de) * 1991-03-28 2000-01-05 Hughes Electronics Corporation Bidirektionaler und programmierbarer E/A-Treiber
JP2806075B2 (ja) * 1991-06-06 1998-09-30 日本電気株式会社 マイクロコンピュータ
US5539911A (en) * 1991-07-08 1996-07-23 Seiko Epson Corporation High-performance, superscalar-based computer system with out-of-order instruction execution
US5440752A (en) 1991-07-08 1995-08-08 Seiko Epson Corporation Microprocessor architecture with a switch network for data transfer between cache, memory port, and IOU
US5493687A (en) * 1991-07-08 1996-02-20 Seiko Epson Corporation RISC microprocessor architecture implementing multiple typed register sets
JP3387538B2 (ja) * 1992-02-03 2003-03-17 松下電器産業株式会社 データ転送装置,プロセサエレメント及びデータ転送方法
EP0636256B1 (de) * 1992-03-31 1997-06-04 Seiko Epson Corporation Befehlsablauffolgeplanung von einem risc-superskalarprozessor
EP0638183B1 (de) * 1992-05-01 1997-03-05 Seiko Epson Corporation Vorrichtung und verfahren zum befehlsabschluss in einem superskalaren prozessor.
US5337414A (en) * 1992-09-22 1994-08-09 Unisys Corporation Mass data storage and retrieval system
DE69320991T2 (de) 1992-12-31 1999-01-28 Seiko Epson Corp., Tokio/Tokyo System und verfahren zur änderung der namen von registern
US5628021A (en) * 1992-12-31 1997-05-06 Seiko Epson Corporation System and method for assigning tags to control instruction processing in a superscalar processor
US5457802A (en) * 1993-05-17 1995-10-10 Motorola, Inc. Integrated circuit pin control apparatus and method thereof in a data processing system
JP3131675B2 (ja) * 1993-10-12 2001-02-05 三菱電機株式会社 ワンチップマイクロコンピュータ及びそのプログラムの開発,評価方法
JPH07110803A (ja) * 1993-10-13 1995-04-25 Nec Corp シングルチップマイクロコンピュータ
JPH0877035A (ja) * 1994-09-06 1996-03-22 Toshiba Corp 中央処理装置及びマイクロコンピュータ
US5764907A (en) * 1994-10-17 1998-06-09 Chrysler Corporation Computer to microcomputer interface
IT1277386B1 (it) * 1995-07-28 1997-11-10 Alcatel Italia Apparato per lo scambio di informazioni tra carte di identificazione a circuiti integrati e un dispositivo terminale
US6097218A (en) * 1996-12-20 2000-08-01 Lsi Logic Corporation Method and device for isolating noise sensitive circuitry from switching current noise on semiconductor substrate
US11139043B2 (en) * 2019-05-20 2021-10-05 Board Of Trustees Of The University Of Alabama, For And On Behalf Of The University Of Alabama In Huntsville Systems and methods for identifying counterfeit memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6068441A (ja) * 1983-09-22 1985-04-19 Fujitsu Ltd ワンチツプ・マイクロ・コンピユ−タ
DE3579814D1 (de) * 1984-02-09 1990-10-25 Toshiba Kawasaki Kk Ic-kartensystem.
JPS60207957A (ja) * 1984-03-31 1985-10-19 Toshiba Corp デ−タ保護方式
US4698750A (en) * 1984-12-27 1987-10-06 Motorola, Inc. Security for integrated circuit microcomputer with EEPROM
JPS6267800A (ja) * 1985-09-20 1987-03-27 Hitachi Ltd 半導体集積回路装置
JPS62204345A (ja) * 1986-03-05 1987-09-09 Oki Electric Ind Co Ltd マイクロコンピユ−タ
JPS62251963A (ja) * 1986-04-25 1987-11-02 Casio Comput Co Ltd Icカ−ドの認証方式

Also Published As

Publication number Publication date
EP0315209A2 (de) 1989-05-10
DE3855294D1 (de) 1996-06-20
HK1003014A1 (en) 1998-09-30
EP0315209A3 (en) 1990-07-11
KR920001283B1 (ko) 1992-02-10
US5089951A (en) 1992-02-18
EP0315209B1 (de) 1996-05-15
KR890008702A (ko) 1989-07-12

Similar Documents

Publication Publication Date Title
DE3855294T2 (de) Mikrorechner mit Speicher
DE3048365C2 (de)
DE3851038T2 (de) Zugriff auf einen geschützten Speicher.
DE69719479T2 (de) Datenverarbeitungssystemsicherheit
DE69524031T2 (de) Verfahren und Einrichtung zur Prüfung der Gültigkeit des Betriebs eines Systems
DE69427571T2 (de) Speicherzugangsschutzschaltung mit kryptographischem Schlüssel
DE68927755T2 (de) System zur sicheren chiffrierschlüsselverarbeitung
DE69404674T2 (de) Speicherkarte und verfahren zum betrieb
EP1101163B1 (de) Programmgesteuerte einheit
DE4204119C2 (de) Multiprozessorsystem
DE19737838B4 (de) Halbleiterspeichereinrichtung
WO1996028782A1 (de) Mehrbenutzerdatenverarbeitungsanlage mit speicherschutz
DE102018127330A1 (de) System-on-Chip und Verfahren zum Betreiben eines System-on-Chip
DE69511019T2 (de) Datenprozessor mit voneinander getrenntem Datenbus und Befehlsbus
DE69430102T2 (de) Speicherüberwachungsschaltung zur Feststellung des unberechtigten Speicherzugriffs
DE4107558C2 (de)
DE69427570T2 (de) Schaltung zum Beschränken von Mehrfachzugriffen für eine Mehrfachspeichereinrichtung
DE69231077T2 (de) Einchipmikrorechner mit Schutzfuntion für den Inhalt eines internen ROM's
DE60211801T2 (de) Informationsverarbeitungsverfahren und -gerät zur Kontrolle einer Zugangsebene
DE4042161A1 (de) Rom mit sicherheitsschaltung
DE19611386A1 (de) Datenspeichervorrichtung und Datenverarbeitungssystem
DE69226306T2 (de) Nichtflüchtige Speicheradressierungsverfahren und Anordnung
WO1998041880A2 (de) Integrierte schaltung und verfahren zum testen der integrierten schaltung
DE4303406C2 (de) Verfahren zur Inhaltsänderung eines Registers eines Mikrocomputers
EP0613077B1 (de) Verfahren zur Reset-Erzeugung in Datenverarbeitungsanlagen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition