DE2916658C2 - - Google Patents

Info

Publication number
DE2916658C2
DE2916658C2 DE2916658A DE2916658A DE2916658C2 DE 2916658 C2 DE2916658 C2 DE 2916658C2 DE 2916658 A DE2916658 A DE 2916658A DE 2916658 A DE2916658 A DE 2916658A DE 2916658 C2 DE2916658 C2 DE 2916658C2
Authority
DE
Germany
Prior art keywords
memory
register
write
microprocessor
permanent memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE2916658A
Other languages
English (en)
Other versions
DE2916658A1 (de
Inventor
Michel Plaisir Fr Ugon
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.)
Bull SA
Original Assignee
Bull SA
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 Bull SA filed Critical Bull SA
Publication of DE2916658A1 publication Critical patent/DE2916658A1/de
Application granted granted Critical
Publication of DE2916658C2 publication Critical patent/DE2916658C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/24Loading of the microprogram

Description

Die Erfindung betrifft einen monolithischen Mikroprozessor nach dem Oberbegriff des Patentanspruchs 1 bzw. des Patent­ anspruchs 6.
Ein monolithischer Mikroprozessor dieser Gattung ist beispielsweise aus der JP-AS 52-68 341 bekannt und enthält auf einem einzigen Chip einen programmierten Permanentspeicher und eine Verarbeitungseinheit zur Ausführung der in dem Permanentspeicher gespeicherten Programmbefehle. Der programmierbare Permanent­ speicher kann durch Bestrahlung mit Ultraviolettlicht gelöscht werden. Zum Einschreiben eines Programmes in diesen Speicher wird eine Schreibspannung benötigt, die etwa das fünf­ fache der üblichen Betriebsspannung des Mikroprozessors beträgt. Diese Programmierspannung wird über eine gesonderte Leitung zugeführt. Um eine Programmierung des programmierbaren Permanentspeichers vorzunehmen, wird über die gesonderte Leitung ein Programmierimpuls einer ausgewählten Speicherspalte über Schalttransistoren zugeführt. Zum Einschreiben wird eine Schreibzeit benötigt, die ein Vielfaches der Zykluszeit des Mikroprozessors beträgt. Zweck der Programmierung des programmier­ baren Permanentspeichers bei einem solchen Mikroprozessor ist es, das Programm, nach dem der Mikroprozessor arbeiten soll, erstmalig einzugeben oder nachträglich zu verändern, beispielsweise um das Programm zu korrigieren oder zu optimieren. Der Mikroprozessor selbst hat an seiner Programmierung aber keinen aktiven Anteil; vielmehr erfolgt die Programmierung stets auf Grund von Einwirkung von außerhalb des Mikroprozessors auf den Speicher.
Unter Selbstprogrammierung wird die Gesamtheit der Möglichkeiten verstanden, welche bei einem Programm zur Modifizierung eines anderen gegeben sind. Wenn man ein Programm P₁ als eine Gesamtheit von Funktionen f i definiert, d. h.:
P₁ = (f₁, f₂, . . . f i . . . f j ),
so wird Selbstprogrammierung realisiert, wenn f i ein zur Ver­ änderung des Unterprogramms f j geeignetes Programm ist. Auf diese Weise wird das Programm P₁ transformiert in ein Programm P₂, d. h. P₂ = (f₁, f₂, . . . f i . . . g j ). Diese Eigenschaft kann schrittweise mit Hilfe einfacher Funktionen erweitert werden, um das vollständige Programm zur Durchführung vorgesehener Abläufe zu modifizieren, welche grundverschieden von den auf Grund der ursprünglichen Funktionen definierten Abläufe sind. Das Programm verwandelt sich dabei mit der Zeit abhängig von seinem eigenen Werdegang.
Selbstprogrammierung kann extrem komplexe Probleme aufwerfen, da im voraus alle möglichen Entwicklungen des Programms von diesem selbst vorausgesehen werden müssen. Bei vielen Anwendungs­ fällen sind aber die möglichen Entwicklungen des Programms als Funktion des Ablaufes sehr gut voraussehbar.
In großen Informationssystemen (z. B. DE-OS 17 74 296) mit großen Recheneinheiten kann die Selbstprogrammierung unter Verwendung von Speicherzwischenräumen durchgeführt werden, die in dem Maße, wie die Entwicklung in der Zeit des Ausgangsprogramms fortschreitet, vergrößert werden können. Bei gewissen Anwendungen des Mikroprozessors, dessen Speichergröße gering ist, ist es wünschenswert, daß die Entwicklung des Ausgangsprogramms nicht mehr Speicherplatz einnimmt als das Originalprogramm. Um dieses Resultat zu erreichen, besteht eine Lösung darin, den Inhalt von Instruktionen oder Daten an spezifischen Adressen des Ausgangsprogrammes zu ändern. Diese Änderung könnte beispielsweise den Inhalt der Zone des Operationscodes bei einem speziellen Befehl des Ausgangsprogramms betreffen. Auf diese Weise könnte ein Ausgangsprogramm P₁, welches an der Adresse 10 A einen Additionsbefehl in einem Operationscode enthält, vorsehen, seinen Operationscode umzuformen in eine Subtraktion, ohne daß insoweit die Dimension des Ausgangsprogrammes modifiziert wird. Ebenso kann ein unmittelbarer Operand modifiziert werden, um einen neuen Wert in Funktion von einem Ereignis aufzunehmen. Es sei daran erinnert, daß der Operandenbereich eines Befehls unmittelbar einen Operanden enthält, wenn sein Inhalt eine Information einschreibt und nicht eine Adresse. Dieser Operand kann in einem Befehl oder aber als Teil von Festdaten des Beginns des Programms enthalten sein. Auf diese Weise werden abhängig von den durchgeführten Modifikationen eines Operanden die durch das Programm ausgeführten Aktionen unterschiedlich.
Die Technik der Selbstprogrammierung kann sehr unterschiedliche Anwendungen bei Systemen haben, welche dem Ersatz von Papiergeld dienen, wie beispielsweise Scheckkarten, Geldstücke, Systeme, in welchen die Integrität und die Vertraulichkeit der in den Karten enthaltenen Information gesichert werden soll, sowie bei Informationssystemen, wo es notwendig ist, die Unan­ tastbarkeit eines Programms gegenüber externen Ereignissen zu sichern, um spezifische Funktionen auf verschiedenen, programmier­ baren Maschinen, vorzugsweise auf Datenverarbeitungs- oder kleinen Entwicklungsrechnern oder in Systemen, wo eine Ermächtigung und eine Zugriffskontrolle notwendig ist, zu realisieren. Bei einer Anwendung für Banken kann notwendig werden, die aufeinanderfolgende Speicherung der durchgeführten Transaktionen über einen Zähler durchzuführen, als Selbstschutz gegen betrügerischen Zugriff zu den Daten der gespeicherten Verbuchung, um den Zugriff zu der Speichereinrichtung zu kontrollieren, wo sich diese Daten befinden, in dem sich ein Code mit vertraulichen Daten befindet, verglichen wird. Es kann auch eine Änderung des Verhaltens dieser Speichereinrichtung gegenüber der äußeren Umgebung in Funktion des Ablaufes der Ereignisse, welche während der gesamten Zeit der Benützung stattgefunden hatten, notwendig sein.
Man kennt Ausführungsformen von durch den Anwender programmier­ baren Kleinrechnern, aber deren grundsätzlicher Mangel besteht darin, daß das eingespeicherte Programm bei fehlender Stromversorgung nicht erhalten bleibt. Es ist deshalb notwendig, an diese Rechner im Moment ihrer Anwendung einen Festwert­ speicher anzuschließen. Diese ROM-Speicher sind unhandlich, wenig praktisch und relativ teuer.
Bei gewissen Anwendungsfällen ergibt sich, daß die entsprechenden Speicher einerseits sehr kleine räumliche Abmessungen haben müssen und andererseits Speichereinrichtungen enthalten müssen, um die eingegebenen Informationen dauerhaft zu erhalten. Die bekannten Mikroprozessoren, welche in LSI-Technik aufgebaut sind, erfüllen gut das erste Kriterium des geringen Raumbedarfs, wie es in den vorgenannten Anwendungen gefordert wird. Die monolithische Struktur enthält aber nur die Rechen­ einrichtungen, welche die Durchführung der arithmetischen und logischen Funktionen übernehmen, sowie die Steuereinrichtungen. Keine dieser Strukturen umfaßt Speichereinrichtungen, die grundsätzlich zu einer anderen monolithischen Struktur gehören, welche sich an die externen Anschlüsse des Mikroprozessors anpaßt. Ausführungsbeispiele von solchen Mikroprozessoren finden sich in dem Buch mit dem Titel "Les microprocesseurs, Techniques et applications par RODNAY ZAKS et PIERRE LE BEUX", welches bei "SYBEX", 313 rue Lecourbe, 75 015 Paris, erschienen ist. Zur Verwirklichung einer selbstprogrammierbaren Speicher­ einrichtung benötigt man deshalb bei Anwendung klassischer Mittel mindestens einen Halbleiterchip, auf welchem die Strukturen einer logischen Recheneinheit und der Steuereinheit realisiert sind, und einen weiteren Chip, auf welchem die Speichereinrichtung untergebracht ist. Die Verbindungen zwischen diesen beiden Chips setzen Schaltverbindungen voraus, deren Größe gegenüber der eines einzelnen Chips nicht vernach­ lässigbar ist, was auch dem weiter oben genannten Kriterium eines geringen Raumbedarfs zuwiderläuft. Herkömmlich verwendete Speicher sind zur Aufnahme eines oder mehrerer Programme ebenso wie zur Aufnahme von Daten bestimmt, wobei der Zugriff zu diesen Programmen und Daten mit Hilfe eines Adressenregisters für das Aufsuchen eines Befehls oder einer Größe im Speicher erfolgt. Dabei ist allgemein ein Ausgangsregister vorgesehen, in welchem der Befehl oder die Information über­ nommen wird, welche in dem Speicher an der durch das Adressen­ register angezeigten Adresse gelesen wurde. Bei den oben diskutierten Anwendungsfällen ist es wichtig, die gespeicherten Informationen auch bei Abschaltung der Betriebsspannung der Speichereinrichtung erhalten zu können. Andererseits setzt die Notwendigkeit, schon gespeicherte Informationen (Befehle und Daten) ändern zu können, die Existenz von einschreibfähigen Permanentspeichern voraus. Tatsächlich kann ein in einem nicht einschreibbaren und nicht löschbaren Speicher vom Typ ROM ein­ geschriebenes Programm nicht von derselben Beschaffenheit sein wie bei einem Speicher, welcher modifiziert wird. Umgekehrt eignet sich ein programmierbarer Speicher (PROM) für die weiter oben angesprochenen, verschiedenen Anwendungen, denn dieser Speicher ist nicht löschbar, und man kann jederzeit seinen Inhalt ändern. Es sei daran erinnert, daß ein PROM-Speicher ein ROM-Speicher ist, welcher unmittelbar durch den Anwender programmiert werden kann. Jede Zelle dieses Speichers ist mit einem schmelzbaren Leiter ausgestattet, und ein Programmieren erfolgt jeweils durch Durchschmelzen eines Leiters in diesem Speicher. Andere programmierbare Speicher des Typs EPROM, die in MOS-Technik ausgeführt sind, können ebenfalls angewendet werden. Die PROM- und EPROM-Speicher haben allerdings zwei Arten von Einschränkungen bei den vorgenannten Anwendungen.
Die Zuordnung dieser beiden Speichertypen zu herkömmlichen Mikroprozessoren erfordert ein Anschließen im Ruhezustand des Mikroprozessors, während die Schreibspannung an den Speicher angelegt wird. Diese Spannung kann nur von außerhalb des Mikroprozessors geliefert werden, was zur Folge hat, daß während dieser Phase kein Programm abgewickelt werden kann, was die Selbstprogrammierung dieses Speichers durch den Mikro­ prozessor unmöglich macht, denn der Ordnungszähler, welcher die Adressierung des genannten Speichers ausführt, kann nicht gleichzeitig eine Adresse A i des Speichers, dessen Inhalt zu modifizieren ist, und eine andere Adresse A j desselben Speichers markieren, um eine Schreibsequenz zum Einschreiben in der durch die Adresse A i festgelegten Speicherzone zu eröffnen.
Der Erfindung liegt die Aufgabe zugrunde, einen monolithischen Mikroprozessor der eingangs angegebenen Art dahingehend weiter­ zubilden, daß seine Selbstprogrammierung möglich ist.
Diese Aufgabe wird bei einem gattungsgemäßen monolithischen Mikroprozessor nach einer ersten erfindungsgemäßen Lösung durch die im Kennzeichen des Patentanspruchs 1 und nach einer zweiten erfindungsgemäßen Lösung durch die kennzeichnenden Merkmale des Patentanspruchs 6 gelöst.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unter­ ansprüchen angegeben.
Bei einer besonderen Ausführungsform des erfindungsgemäßen Mikroprozessors ist ein Teil der Programme, nämlich diejenigen Programme, welche die Grundfunktionen wie die arithmetischen Funktionen und die Rechenfunktionen betreffen, fest eingespeichert. Ein zweiter Programmteil ist zur Übernahme der Programmierung von über eine Tastatur des Rechners durch den Anwender eingegebenen Funktionen bestimmt. Ein dritter Teil des Speichers enthält die verschiedenen, durch den Anwender eingegebenen und der zeitlichen Entwicklung Rechnung tragenden Programme.
Die Erfindung wird durch die nachfolgende Beschreibung in Verbindung mit den anliegenden Zeichnungen besser verständlich.
In den Zeichnungen zeigt
Fig. 1 ein Blockschema einer ersten Ausführungsform des selbstprogrammierbaren Mikroprozessors,
Fig. 2 eine Ausführungsvariante des in Fig. 1 gezeigten Mikroprozessors,
Fig. 3 eine detaillierte Darstellung des selbstprogrammierbaren Mikroprozessors,
Fig. 4 ein Taktdiagramm der verschiedenen, während eines Schreibvorganges auftretenden Spannungen in einem programmierbaren Tei eines Permanentspeichers,
Fig. 5 ein vereinfachtes Ablaufdiagramm der Verarbeitungsstufen in einem Schreibunterprogramm PROG,
Fig. 6 eine Ausführungsvariante des selbstprogrammierbaren Mikroprozessors und
Fig. 7 eine Ausführungsform eines in der Ausführungsform des Mikroprozessors nach Fig. 6 verwendeten Schreibautomaten.
Bei der Ausführungsform nach Fig. 1 wird der PROM- oder EPROM- Speicher 101 durch die Register A102 und A103 adressiert.
Der Speicher 101 kann eine beliebige Kapazität haben. In dem angenommenen Beispiel sei die Kapazität 4 K Bytes, wobei jedes Byte einen Umfang von 8 Bits aufweist. Bei einem solchen Aufbau müssen die Register A₁ und A₂ mindestens 12 Bits aufnehmen. Das Register A102 wird sowohl als Zwischenregister für eine Adresse des Speichers 101 als auch als Ordnungszähler verwendet, wobei es im letzteren Fall dazu dient, die Fortschaltung der Adressen im Speicher 101 zu sichern. Auch das Register A103 wird als Adressenregister verwendet und enthält immer die Adresse, deren Inhalt verändert werden soll. Selbstverständlich kann die Rolle der Register A₁ und A₂ ausgetauscht werden. Die Register R105 und R106 sind Datenregister, die eine beliebige Länge von 4,8 oder 16 Bits haben können, was von der Wortlänge in dem Speicher 101 abhängt, die ihrerseits durch den jeweils angegebenen Anwendungsfall bestimmt wird. Die Register R105 und R106 sind jeweils mit den Adressenregistern A102 und A103 verbunden. Eine Information, welche in dem Speicher 101 gelesen werden soll und welche durch das Register A₁ adressiert wird, wird von dem Speicher 101 in das Register R105 übertragen, ebenso wie eine zu schreibende Information in das Register R105 übertragen und an der durch das Register A102 bestimmten Adresse eingeschrieben wird. Dieselbe Beziehung besteht zwischen den Registern A₂ und R₂. In der Fig. 1 ist der Ausgang 2 des Registers A₁ über den Bus A₁ mit dem Eingang 1 des Speichers 101, der Ausgang des Registers A₂ mit dem Eingang 2 des Speichers 101 über den Bus A₂ verbunden. Die in dem Speicher 101 einzulesenden oder zu schreibenden Daten werden entweder von der Eingangs-/Ausgangsklemme 3 des Speichers 101 über den Bus D₁ dem Eingang 1 des Registers R105 oder über den Bus D₂ von der Eingangs-/Ausgangsklemme 4 des Speichers 101 dem Eingang 1 des Registers R106 zugeführt. Die Eingangs-/Ausgangsklemme jedes Registers R₁ und R₂ ist an den Bus D angeschlossen, der zu den Eingängen 1 beider Register A₁ und A₂ führt. Die Steuereinheit 104 sichert die Synchronisation des Austausches der Information über den Bus D und die Adressierung des Speichers 101. Die Ausgänge 2 und 3 dieser Einheit steuern das Lesen oder das Schreiben der Informationen in den Registern A₁, A₂ und R₁, R₂. Jeder Eingang 3 dieser vier Register kann getrennt durch die Verarbeitungs- und Steuereinheit 104 angesteuert werden. Die Einheit 104 steht über den Eingang 1 mit der Daten-Eingangs-/Ausgangssammelleitung in Verbindung, welche den Mikroprozessor mit externen Anschlüssen verbindet. Die Eingangs-/Ausgangsklemme führt zu Bus D und kann Daten oder Informationen in eines der vier vorgenannten Register übertragen oder Daten von einem der beiden Register R₁ oder R₂ empfangen. Beim Schreiben einer Information im Speicher 101 wird die Programmierspannung V p über externe Organe dem Mikroprozessor zugeführt.
Die Arbeitsweise des Mikroprozessors ist wie folgt. Das Verarbeitungs­ programm steht in dem Speicher 101. Die zu modifizierenden Daten oder Befehle dieses Programms werden in das Register R₂ durch das Verarbeitungsprogramm über die Verbindung der Register A₁-R₁ eingegeben. Die entsprechende Adresse wird in das Register A₂ eingegeben. Das Programm verzweigt sich dann auf eine Schreibsequenz mit der entsprechenden Adresse aus dem Register A₁ und prüft anschließend, ob einwandfreie Schreibbedingungen vorlagen. Das Schreiben im Speicher vom Typ PROM und EPROM benötigt eine gewisse Zeitspanne. Es ist deshalb notwendig, die Adresse und die zu schreibenden Daten stabil am Eingang des Speichers während des gesamten Schreib­ zyklus anliegen zu lassen. Folglich müssen die vier Register die Informationen, die sie enthalten, während mindestens einem Schreibzyklus gespeichert behalten können, was mittels "Latches" bzw. Einrastschaltungen erfolgen kann, welche die Informationen vorübergehend speichern, die auf den Sammelleitungen, mit denen sie verbunden sind, nur kurzzeitig auftreten.
Das Ausführungsbeispiel nach Fig. 1 besitzt zwei Besonderheiten
  • 1) Die Schaltungen für den Zugriff auf den Speicher müssen komplex sein, da zu ein und derselben Speicherzelle gleichzeitig und unabhängig voneinander zwei Zugriffe erfolgen können, und
  • 2) die Konzeption erlaubt das Selbstlöschen eines Programms, da ja zu einem gegebenen Augenblick die Adresse A₁ gleich der Adresse A₂ sein kann, diese Eigenschaft kann nützlich bei Anwendungen sein, bei welchen der Schutz bestimmter Informationen notwendig ist.
Die in Fig. 2 gezeigte Ausführungsform des Mikroprozessors ist demgegenüber vereinfacht. In der Fig. 2 ist der Speicher PROM oder EPROM 101 in zwei Speicherbereiche M₁ und M₂ unterteilt, wobei der Speicherbereich M₁ durch das Register A102 und der Speicherbereich M₂ durch das Register A103 adressiert wird. Die Unterteilung des Speichers in zwei Speicherbereiche ist die einzige Besonderheit in dem Ausführungsbeispiel, wie es in Fig. 2 gezeigt ist; die übrigen Elemente sind unverändert gegen­ über den in Fig. 1 gezeigten Elementen. Die Programmier­ spannungen für jeden Speicherbereich M₁ und M₂ sind voneinander unabhängig, um einen Bereich durch ein in dem anderen befindliches Programm programmieren zu können. Dieser Aufbau besitzt die folgenden Vorteile:
Bei vielen Anwendungen ist es möglich, die Programme so aufzubauen, daß der Bereich M₁ des Speichers alle nicht evolutiven Programme oder alle Teile von solchen Programmen enthält und der Bereich M₂ die evolutiven Programme oder Teile von diesen Programmen enthält. In diesem Anwendungsfall kann der Speicher­ bereich M₁ in Form eines ROM ("Read only Memory")-Speichers ausgeführt werden, um die Herstellkosten und die Fläche dieses Speicherteils zu reduzieren; in diesem Fall entfällt die Schreibspannung V p ₁. Hingegen ist es notwendig, den zweiten Bereich durch einen PROM- oder EPROM-Speicher zu realisieren. Es ist ersichtlich, daß in diesem Fall die Adressierprobleme leicht gelöst werden, da ein Adressenregister eines Speicher­ bereiches nicht einen Speicherplatz des anderen Speicherbereiches adressieren kann.
Die Fig. 3 zeigt eine komplette Ausführungsform eines selbst­ programmierbaren Mikroprozessors gemäß der Erfindung. Sämtliche den Mikroprozessors realisierenden Elemente werden über einen Bus D (BUS D) gesteuert. Wie vorstehend erläutert, ist die Speichereinheit 101 unterteilt in zwei Bereiche M₁ und M₂. M₁ enthält die nicht evolutiven Teile des Programmes, und M₂ enthält die evolutiven Teile des Programmes. Der Bereich M₁ wird durch das Adressenregister A102 adressiert, welches die Rolle des Ordinalzählers, wie es sich in herkömmlichen Mikroprozessoren findet, übernimmt. Dieses Adressenregister 102 ist mit dem Datenregister IR 105 verbunden. Der Bereich M₂ wird über das Adressenregister A103 adressiert und ist mit dem Datenregister D 106 verbunden. Ebenso wie in dem vorstehenden Beispiel sind die Speicherbereiche M₁ und M₂ aus permanent- bzw. energieunabhängigen Speicherzellen vom Typ ROM, PROM oder EPROM. Die Programmierspannung PG wird von der Kippstufe P 113 geliefert. Die übrigen Elemente in der Fig. 3 entsprechen den Aufbauelementen herkömmlicher Mikrorechner. Das Register PSW 112 ist ein Spezialregister, wobei der Begriff von der Abkürzung des angelsächsischen Wortes "Program Status Word" (Programmstatuswort) kommt. Dieses Register enthält alle für die Durchführung eines Programmes notwendigen Informationen. Die Speicherung eines Programmstatuswortes erlaubt, einen gewissen Arbeitszustand des Mikroprozessors aufrechtzuerhalten, also gewisse Zugriffe zu Informationen des internen Programmes im Mikroprozessor, dem Benützer durch bevorzugte Bitanordnungen im Inneren des Wortes PSW zu untersagen. Ebenso wie klassische Ausführungen enthält der Mikroprozessor eine logische Recheneinheit 107, die über ihre Eingänge 1 und 2 mit einem Akkumulator 108 und mit einem Zwischenspeicherregister 109 verbunden ist, die ihrerseits eingangsseitig am Datenbus (BUS D) ebenso wie der Ausgang 3 der logischen Recheneinheit 107 liegen. Der Mikroprozessor weist auch eine Registereinheit 111 auf, die aus Arbeitsregistern R 0-7 und Stapelregister besteht, welche durch das Adressenregister RAM 110 adressiert wird, dessen Eingang ebenfalls mit dem Bus D verbunden ist. Mit diesem Aufbau kann ein Programm, welches in den Bereichen M₁ und M₂ des Speichers 101 durchgeführt wird, mit den im Bereich M₂ enthaltenden Informationen modifiziert werden. Genauer ausgedrückt heißt dies z. B.: wenn das Programm den Speicherinhalt mit der Adresse 2FOH (dies sei das 752. Wort des Speichers) durch das Ergebnis einer Operation, welches sich in dem Akkumulator befindet, modifizieren soll, dann könnte dieses Programm zuvor die Adresse 2FO in die Arbeitsregister R₀ und R₁ eingeben.
Die Selbstprogrammierung wird durch ein Unterprogramm, genannt "PROG", ausgeführt, das in dem Speicherbereich M₁ enthalten ist. Dieses Programm soll nun alle notwendigen Funktionen zum Schreiben im Speicher, vorzugsweise unter Anwendung von Sequenzen, die mit der angewendeten Technologie kompatibel sind, realisieren. Wenn die programmierbaren Speicher in einer "FAMOS"-Technologie realisiert sind, entspricht der Zeitablauf dem in Fig. 4, welche dem Verlauf des Taktsignals, die Haltezeit für die Dataen in dem Register 106 und das durch die Kipp­ schaltung P 113 ausgegebene Schreibsteuersignal PG zeigt. Dabei ist festzustellen, daß die Daten und die Adresse in den Registern D 106 und A103 während einer Zeitspanne gehalten werden, die im Vergleich zur Zykluszeit des Mikroprozessors lang ist; wenn die Zykluszeit 5 µs beträgt, müssen Adresse und Daten während der Schreibphase von 50 ms stabil gehalten werden.
Die Ablaufphasen des Programms PROG sind in der Fig. 5 gezeigt. Während des Abschnittes 500 wird der Inhalt des Akkumulators 108 in das Register D 106 geladen, was die Einführung der Daten oder der zu ändernden Informationen in das Register D zur Folge hat. Im Abschnitt 501 wird der Inhalt der Register R₀, R₁ übertragen in das Adressenregister A103, was die Einführung der Adresse der Daten oder der zu modifizierenden Informationen in das Register A103 zur Folge hat. Im Abschnitt 502 gibt die Kippschaltung P 113 das Schreibsteuersignal PG für die in den Speicherbereich M₂ zu schreibenden Daten aus. Während des Abschnittes 503 wird ein Zähler zur Kontrolle der zum Schreiben einer Information oder von Daten in dem Bereich 2 notwendigen Zeit eingeschaltet. Die Kontrolle erfolgt im Abschnitt 504. In dem dargestellten Beispiel ist angenommen, daß diese Zeit 50 ms sein soll. Am Ende dieser Verzögerung ist das Schreiben mit dem Abschnitt 505 beendet, und eine Rückführung wird im Abschnitt 506 durchgeführt per Programm, das Unterprogramm PROG genannt wird, durch Aufsuchen der notwendigen Informationen für diese Rückführung in den Stapelregistern. Die Liste der Mikrobefehle, welche die Durchführung des Unterprogramms PROG ermöglichen, ist im folgenden dargestellt:
Der prinzipielle Programmablauf besteht im Laden der für den Aufruf des Programms PROG notwendigen Parameter. Die Liste der Mikrobefehle ist dann:
Hieraus ist ersichtlich, daß die Register A₂ und D während der gesamten Schreibphase (Signal PG) verriegelt bleiben, während der Bus die zum Ablauf des Schreibprogramms PROG notwendigen Übertragungsbefehle erhält.
Gemäß einer anderen Ausführungsform der Erfindung ist das Schreibprogramm PROG durch einen vollständig mit Hilfe logischer Schaltkreise realisierten Schreibautomaten ersetzt. Das Ausführungsbeispiel nach Fig. 6 zeigt den Aufbau eines ent­ sprechenden Mikroprozessors, welcher die nichtlöschende Selbst­ programmierung erlaubt, bei welchem das Schreibprogramm PROG durch einen Schreibautomaten 114 ersetzt ist. Der vorstehend beschriebene Mikroprozessor realisiert die Funktion der nicht­ löschenden Selbstprogrammierung dank der Anwendung eines doppelten Zugriffs gleichzeitig zu dem Speicher PROM und EPROM durch vier Register, welche paarweise verbunden sind, und eines entsprechenden Programmes PROG. Diese Funktion kann auch durch einfachen Zugriff zu den nichtlöschenden, selbstprogrammier­ baren Speichern mit Hilfe eines einzigen Adressenregisters 102, eines Datenregisters 105 und des Schreibautomaten 114 realisiert werden. Der Schreibautomat ist mit dem Bus D, der wie zuvor an die Verarbeitungseinheit 104 angeschlossen ist, mit dem Adressenregister A 102 und dem Datenregister R 105 verbunden. Er steuert die Verriegelung der Register A 102 und R 105 durch Aussenden des Schreibsteuersignals an den Speicher 101. Dieser Automat wird durch einen Schreibbefehl W gesteuert, den die Verarbeitungseinheit 104 ausgibt. Wenn der Schreibzyklus in dem Speicher PROM oder EPROM 101 beendet ist, gibt der Schreibautomat ein Quittungssignal A cq an die Verarbeitungs­ einheit, welche das Programm wieder aufnimmt, das im Laufe des Schreibzyklus unterbrochen wurde. Dieser Automat erlaubt deshalb eine Ausgabe der Schreibspannung (Signal PG), ohne die normale Funktion des Mikroprozessors zu stören. Das Datenregister R 105 arbeitet bidirektional, d. h., es kann gelesene Daten aus dem Speicher übernehmen oder zu schreibende Daten in den Speicher PROM geben. Das Register A 102 wird zwischen dem Schreibautomaten 114 und der Verarbeitungseinheit 104 auf den Bus D multiplexiert. In der Bearbeitungsphase wird das Register A durch den Ordinalzähler der Verarbeitungs­ einheit 104 geladen, und das Register R wird als Register zum Lesen der Befehle und der Daten aus dem Speicher PROM 101 verwendet.
Während der Selbstprogrammierung übergibt die Verarbeitungs­ einheit die Steuerung an den Schreibautomaten zur Aussendung des Mikrocodewortes W. Dieser Automat erzeugt dann die erforderliche Schreibsequenz, welche kompatibel mit der Technologie des verwendeten PROM-Speichers ist. Die Daten, deren Befehle modifiziert werden, werden durch das Register R 105 eingegeben. Am Ende der Schreibsequenz wird die Steuerung an die Verarbeitungs­ einheit zurückgegeben, welche wieder den normalen Verlauf des somit modifizierten Programmes übernimmt. Der Inhalt des Registers A wird dann wieder hergestellt, sei es durch den Schreibautomaten, sei es durch die Verarbeitungseinheit.
Die Fig. 7 zeigt ein Realisationsbeispiel des Schreibautomaten. In dieser Ausführung werden die Mikrocode-Schreibsignale am Eingang 1 des Kodierers 701 eingegeben, welcher an seinem Ausgang 2 ein Gültigkeitssignal VAL zum Eingang 14 des Zählers 702 aussendet, um dessen Weiterlauf im Rhythmus der Taktsignale H des Mikroprozessors, welche an seinem Eingang 15 anliegen, zu ermöglichen. Wenn, wie in dem Beispiel nach Fig. 4, die Zykluszeit des Mikroprozessors 5 µs und der Schreibzyklus 50 ms beträgt, muß der Zähler 14 Kippstufen umfassen, um die Zykluszeiten des Mikroprozessors während 50 ms aufzunehmen, also mehr als 10 000 Zyklen abzählen. Der Zähler 702 ist mit einem Dekodierer 703 verbunden, dessen Ausgang 14 das jeweilige Steuersignal an den Eingang K der Kippschaltung 704 gibt, wenn die 10 000 Zyklen abgezählt sind. Der Ausgang Q der Kipp­ schaltung 704 liefert das Schreibsteuersignal PG. Diese Kipp­ schaltung wird in dem binären Zustand "EINS" gesetzt, wenn das Signal VAL anliegt, und in den binären Zustand "NULL" gesetzt, wenn die Zählkapazität 10 000 erreicht ist. Das Zyklus- Quittungssignal wird durch den invertierenden Verstärker 705, dessen Eingang mit dem Ausgang Q der Kippschaltung 704 verbunden ist, ausgegeben.

Claims (11)

1. Monolithischer Mikroprozessor mit einem zumindest teilweise programmierbaren Permanentspeicher, wenigstens einem zugeordneten Adreßregister und Datenregister sowie einer Verarbeitungseinheit zur Ausführung von in dem Permanentspeicher bzw. in dem programmierbaren Teil des Permanentspeichers gespeicherten Programmbefehlen, wobei der Permanentspeicher zum Einschreiben eine Schreibphase benötigt, deren Dauer wesentlich länger als die Zykluszeit des Mikroprozessors ist,
dadurch gekennzeichnet,
daß das Einschreiben von Informationen in den programmierbaren Teil des Permanentspeichers (101) durch die Verarbeitungseinheit (104) steuerbar ist, indem diese ein Unter­ programm (Fig. 5) aufruft, das die Überführung der Adresse, an der das Einschreiben der Informationen in den Permanent­ speicher (101) erfolgen soll, in ein Adreßregister (103) sowie die Überführung dieser Informationen in ein Datenregister (106) bewirkt,
daß eine Einrichtung (113) vorgesehen ist, um mit einem Schreibsteuersignal (PG) die Durchschaltung einer Schreibspannung zu dem programmierbaren Permanentspeicher (101) auszulösen, und
daß eine weitere Einrichtung (500-506) vorgesehen ist, die ansprechend auf ein Steuersignal die Schreibphase von bestimmter Dauer erzeugt.
2. Mikroprozessor nach Anspruch 1, dadurch gekennzeichnet, daß das durch die Verarbeitungseinheit (104) aufgerufene Unter­ programm (Fig. 5) in dem Permanentspeicher (101) gespeichert ist und nach seiner Ausführung wieder verlassen wird.
3. Mikroprozessor nach Anspruch 2, dadurch gekennzeichnet, daß das Aufrufen des Unterprogramms (Fig. 5) durch Laden entsprechender Parameter im Arbeitsregister (108, 111) und Ordnungs­ zählerregister (102) erfolgt.
4. Mikroprozessor nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß das Unterprogramm (Fig. 5) bei Antreffen eines entsprechenden Befehls verlassen wird.
5. Mikroprozessor nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, daß dem Speicherbereich (M₁) des Permanent­ speichers (101), in welchem das Unterprogramm (Fig. 5) enthalten ist, ein Adreßregister (102) zur Adressierung dieses Speicher­ bereichs (M₁) und ein Datenregister (105) für die aus diesem Speicherbereich (M₁) ausgelesenen Informationen zugeordnet sind.
6. Monolithischer Mikroprozessor mit einem zumindest teilweise programmierbaren Permanentspeicher, wenigstens einem zugeordneten Adreßregister und Datenregister sowie einer Verarbeitungseinheit zur Ausführung von in dem Permanentspeicher bzw. in dem programmierbaren Teil des Permanentspeichers gespeicherten Programmbefehlen, wobei der Permanentspeicher zum Einschreiben eine Schreibphase benötigt, deren Dauer wesentlich länger als die Zykluszeit des Mikroprozessors ist,
dadurch gekennzeichnet,
daß das Einschreiben von Informationen in den programmierbaren Teil des Permanentspeichers (101) durch die Verarbeitungseinheit (104) steuerbar ist, indem diese ein Steuersignal (W) erzeugt, das an eine Schreibsteuerschaltung (114) angelegt wird und diese zur Abgabe eines Schreibsteuersignals (PG) veranlaßt, welches an das Adreßregister (103) und das Datenregister (106) angelegt wird, um die Adresse, an der das Einschreiben der Informationen in den Permanentspeicher (101) erfolgen soll, in einem Adreßregister (103) sowie diese Informationen in einem Datenregister (106) eingerastet zu halten,
daß die Schreibsteuerschaltung (114) eine Schaltungseinrichtung (701, 704) aufweist, um ansprechend auf das Steuersignal (W) die Durchschaltung einer Schreibspannung (V p ) zu dem Permanentspeicher (101) auszulösen, und
daß die Schreibsteuerschaltung (114) ansprechend auf das Steuersignal (W) die Schreibphase von bestimmter Dauer mittels eines Zählers (702, 703) erzeugt.
7. Mikroprozessor nach Anspruch 6, dadurch gekennzeichnet, daß die Schreibsteuerschaltung (114) am Ende der Schreibphase ein Wiederaufnahme-Steuersignal (A cq ) erzeugt.
8. Mikroprozessor nach Anspruch 6, dadurch gekennzeichnet, daß die Schreibsteuerschaltung (114) eine durch das Steuersignal (W) auslösbare Zählschaltung (702) aufweist, welche die Takt­ signale (H) des Mikroprozessors zählt und bei Erreichen eines bestimmten, der Dauer der Schreibphase entsprechenden Zählerstandes über einen Decoder (703) ein Signal erzeugt, durch welches das Wiederaufnahme-Steuersignal (A cq ) erzeugt und das Schreibsteuersignal (PG) beendet wird.
9. Mikroprozessor nach Anspruch 8, dadurch gekennzeichnet, daß das decodierte Steuersignal (Val) an eine Kippschaltung (704) angelegt ist, deren einer Ausgang die Durchschaltung einer Schreibspannung (V p ) zu dem Permanentspeicher (101) auslöst.
10. Mikroprozessor nach Anspruch 9, dadurch gekennzeichnet, daß ein anderer Ausgang dieser Kippschaltung (704) ein Wiederaufnahme- Steuersignal (A cq ) an die Verarbeitungseinheit (104) abgibt.
11. Mikroprozessor nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß das Adreßregister (103), das Daten­ register (105, 106), ein Arbeitsregister (108, 111) und ein Ordnungszählerregister (102) an einen Bus (Bus D) angeschlossen sind.
DE19792916658 1978-04-25 1979-04-25 Selbstprogrammierbarer mikroprozessor Granted DE2916658A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7812119A FR2461301A1 (fr) 1978-04-25 1978-04-25 Microprocesseur autoprogrammable

Publications (2)

Publication Number Publication Date
DE2916658A1 DE2916658A1 (de) 1979-10-31
DE2916658C2 true DE2916658C2 (de) 1989-10-26

Family

ID=9207528

Family Applications (2)

Application Number Title Priority Date Filing Date
DE2954731A Expired - Lifetime DE2954731C2 (de) 1978-04-25 1979-04-25 Monolithischer Mikroprozessor
DE19792916658 Granted DE2916658A1 (de) 1978-04-25 1979-04-25 Selbstprogrammierbarer mikroprozessor

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE2954731A Expired - Lifetime DE2954731C2 (de) 1978-04-25 1979-04-25 Monolithischer Mikroprozessor

Country Status (6)

Country Link
US (1) US4382279A (de)
JP (4) JPS54154954A (de)
DE (2) DE2954731C2 (de)
FR (1) FR2461301A1 (de)
GB (1) GB2022884B (de)
HK (1) HK25687A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2916658A1 (de) 1978-04-25 1979-10-31 Cii Honeywell Bull Selbstprogrammierbarer mikroprozessor

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4794558A (en) * 1979-06-12 1988-12-27 Motorola, Inc. Microprocessor having self-programmed eprom
IT1127981B (it) * 1980-01-25 1986-05-28 Olivetti Ing C Spa Apparecchiatura di deposito e o prelievo di banconote mediante carte di credito
IT1128896B (it) * 1980-07-03 1986-06-04 Olivetti & Co Spa Apparecchiatura di elaborazione dati con memoria permanente programmabile
JPS6057090B2 (ja) * 1980-09-19 1985-12-13 株式会社日立製作所 データ記憶装置およびそれを用いた処理装置
US4580216A (en) * 1981-06-22 1986-04-01 Texas Instruments Incorporated Microcomputer with internal selection of on-chip or off-chip access
JPS58149541A (ja) * 1982-03-01 1983-09-05 Hitachi Ltd デ−タ処理装置
US4545038A (en) * 1982-04-05 1985-10-01 Texas Instruments Incorporated Precharged discharge sensing for EPROM
JP2731747B2 (ja) * 1982-04-05 1998-03-25 テキサス インスツルメンツ インコーポレイテツド 電子デジタルプロセッサ装置
US4578751A (en) * 1982-06-25 1986-03-25 At&T Technologies, Inc. System for simultaneously programming a number of EPROMs
US4591972A (en) * 1982-11-15 1986-05-27 Data General Corp. Data processing system with unique microcode control
US4597058A (en) * 1983-05-09 1986-06-24 Romox, Inc. Cartridge programming system
US4725977A (en) * 1983-06-03 1988-02-16 Cpt, Ltd. Cartridge programming system and method using a central and local program library
JPS60177498A (ja) * 1984-02-23 1985-09-11 Fujitsu Ltd 半導体記憶装置
JPH0738187B2 (ja) * 1984-03-23 1995-04-26 株式会社日立製作所 Lsiに構成されたマイクロコンピュータ
GB2161300B (en) * 1984-05-17 1988-01-13 Psion Limited Hand-held microprocessor apparatus
JPS6154583A (ja) * 1984-08-24 1986-03-18 Toppan Printing Co Ltd Icカ−ド
US4650975A (en) * 1984-08-30 1987-03-17 Casio Computer Co., Ltd. IC card and an identification system thereof
US4614861A (en) * 1984-11-15 1986-09-30 Intellicard International, Inc. Unitary, self-contained card verification and validation system and method
DE3584446D1 (de) * 1985-06-18 1991-11-21 Ibm Mikroprozessor.
US4725946A (en) * 1985-06-27 1988-02-16 Honeywell Information Systems Inc. P and V instructions for semaphore architecture in a multiprogramming/multiprocessing environment
JPS6246483A (ja) * 1985-08-22 1987-02-28 Casio Comput Co Ltd Icカ−ドにおけるデ−タ書込み方式
US4752871A (en) * 1985-09-30 1988-06-21 Motorola, Inc. Single-chip microcomputer having a program register for controlling two EEPROM arrays
JPS6299856A (ja) * 1985-10-25 1987-05-09 Mitsubishi Electric Corp マイクロコンピユ−タ
JP2513462B2 (ja) * 1986-03-26 1996-07-03 株式会社日立製作所 マイクロ・コンピユ−タ
US4742215A (en) * 1986-05-07 1988-05-03 Personal Computer Card Corporation IC card system
US5001665A (en) * 1986-06-26 1991-03-19 Motorola, Inc. Addressing technique for providing read, modify and write operations in a single data processing cycle with serpentine configured RAMs
JPS6332658A (ja) * 1986-07-28 1988-02-12 Casio Comput Co Ltd Icカ−ドシステム
DE3745144C2 (de) * 1986-12-24 1998-07-30 Mitsubishi Electric Corp IC-Kartensystem
JPS63170736A (ja) * 1987-01-09 1988-07-14 Toshiba Corp マイクロプロセツサ
US5321845A (en) * 1987-09-09 1994-06-14 Hitachi, Ltd. Single-chip microcomputer including non-volatile memory elements
US4975878A (en) * 1988-01-28 1990-12-04 National Semiconductor Programmable memory data protection scheme
US5222226A (en) * 1988-03-18 1993-06-22 Fujitsu Limited Single-chip microprocessor having variable memory address mapping
JPH0814992B2 (ja) * 1988-07-05 1996-02-14 三菱電機株式会社 Epromプログラミング装置
US5029125A (en) * 1989-03-07 1991-07-02 Drexler Technology Corporation Method of reading and writing files on nonerasable storage media
US5440749A (en) * 1989-08-03 1995-08-08 Nanotronics Corporation High performance, low cost microprocessor architecture
JPH03144879A (ja) * 1989-10-31 1991-06-20 Mitsubishi Electric Corp 携帯型半導体記憶装置
US6807609B1 (en) 1989-12-04 2004-10-19 Hewlett-Packard Development Company, L.P. Interleaving read and write operations on a bus and minimizing buffering on a memory module in a computer system
JPH03229955A (ja) * 1990-02-01 1991-10-11 Hitachi Ltd マイクロコンピュータ制御装置
US5276839A (en) * 1991-03-07 1994-01-04 United States Of America As Represented By The Secretary Of The Air Force System for programming EEPROM with data loaded in ROM by sending switch signal to isolate EEPROM from host system
DE4122371C5 (de) * 1991-07-05 2007-04-12 Rohde & Schwarz Gmbh & Co. Kg Mikroprozessorgesteuertes elektronisches Meßgerät
US5245572A (en) * 1991-07-30 1993-09-14 Intel Corporation Floating gate nonvolatile memory with reading while writing capability
US5262625A (en) * 1991-11-15 1993-11-16 Ncr Corporation Multiple bar code decoding system and method
US5619668A (en) * 1992-08-10 1997-04-08 Intel Corporation Apparatus for register bypassing in a microprocessor
US5293424A (en) * 1992-10-14 1994-03-08 Bull Hn Information Systems Inc. Secure memory card
US5578808A (en) * 1993-12-22 1996-11-26 Datamark Services, Inc. Data card that can be used for transactions involving separate card issuers
US5530232A (en) * 1993-12-22 1996-06-25 Datamark Services, Inc. Multi-application data card
US5880769A (en) * 1994-01-19 1999-03-09 Smarttv Co. Interactive smart card system for integrating the provision of remote and local services
US5594493A (en) * 1994-01-19 1997-01-14 Nemirofsky; Frank R. Television signal activated interactive smart card system
FR2725537B1 (fr) 1994-10-11 1996-11-22 Bull Cp8 Procede de chargement d'une zone memoire protegee d'un dispositif de traitement de l'information et dispositif associe
US5786587A (en) * 1995-08-10 1998-07-28 American Bank Note Holographics, Inc. Enhancement of chip card security
US5764943A (en) * 1995-12-28 1998-06-09 Intel Corporation Data path circuitry for processor having multiple instruction pipelines
US6092184A (en) * 1995-12-28 2000-07-18 Intel Corporation Parallel processing of pipelined instructions having register dependencies
AU731516B2 (en) * 1996-05-10 2001-03-29 David M. Barcelou Automated transaction machine
US6945457B1 (en) * 1996-05-10 2005-09-20 Transaction Holdings Ltd. L.L.C. Automated transaction machine
DE19650549A1 (de) * 1996-12-05 1998-06-10 Ods Gmbh & Co Kg Verfahren zum gesicherten nachträglichen Programmieren einer Mikroprozessorkarte für eine zusätzliche Anwendung
JPH10177563A (ja) * 1996-12-17 1998-06-30 Mitsubishi Electric Corp フラッシュメモリ内蔵マイクロコンピュータ
FR2760871B1 (fr) 1997-03-13 1999-04-16 Bull Cp8 Procede de stockage et d'exploitation d'une information sensible dans un module de securite, et module de securite associe
JPH10269109A (ja) * 1997-03-21 1998-10-09 Mitsubishi Electric Corp マイクロコンピュータ
US6014745A (en) * 1997-07-17 2000-01-11 Silicon Systems Design Ltd. Protection for customer programs (EPROM)
JP4229482B2 (ja) * 1997-10-24 2009-02-25 株式会社ルネサステクノロジ フラッシュメモリ内蔵マイクロコンピュータ
FR2774793B1 (fr) 1998-02-12 2002-08-30 Bull Cp8 Procede pour produire une image au moyen d'un objet portatif, objet portatif et dispositif pour mettre en oeuvre le procede
US6157979A (en) * 1998-03-14 2000-12-05 Advanced Technology Materials, Inc. Programmable controlling device with non-volatile ferroelectric state-machines for restarting processor when power is restored with execution states retained in said non-volatile state-machines on power down
FR2789774B1 (fr) 1999-02-11 2001-04-20 Bull Cp8 Procede de comparaison securise de deux registres memoire, et module de securite mettant en oeuvre ce procede
FR2789779B1 (fr) 1999-02-11 2001-04-20 Bull Cp8 Procede de traitement securise d'un element logique sensible dans un registre memoire, et module de securite mettant en oeuvre ce procede
US6088784A (en) * 1999-03-30 2000-07-11 Sandcraft, Inc. Processor with multiple execution units and local and global register bypasses
FR2795838B1 (fr) 1999-06-30 2001-08-31 Bull Cp8 Procede de securisation du traitement d'une information sensible dans un module de securite monolithique, et module de securite associe
FR2808947B1 (fr) 2000-05-09 2002-10-18 Bull Cp8 Procede pour authentifier un objet portatif, objet portatif correspondant, et appareil pour mettre en oeuvre le procede
JP2002269065A (ja) 2001-03-08 2002-09-20 Mitsubishi Electric Corp プログラム可能な不揮発性メモリを内蔵したマイクロコンピュータ
US20050268157A1 (en) * 2002-06-06 2005-12-01 Koninklijke Philips Electronics N.V. Method for writing data to a non-volatile memory embedded in an integrated circuit and corresponding circuit
US6970985B2 (en) 2002-07-09 2005-11-29 Bluerisc Inc. Statically speculative memory accessing
US20050114850A1 (en) 2003-10-29 2005-05-26 Saurabh Chheda Energy-focused re-compilation of executables and hardware mechanisms based on compiler-architecture interaction and compiler-inserted control
US7996671B2 (en) * 2003-11-17 2011-08-09 Bluerisc Inc. Security of program executables and microprocessors based on compiler-architecture interaction
US8607209B2 (en) 2004-02-04 2013-12-10 Bluerisc Inc. Energy-focused compiler-assisted branch prediction
US20070294181A1 (en) * 2006-05-22 2007-12-20 Saurabh Chheda Flexible digital rights management with secure snippets
US20080126766A1 (en) 2006-11-03 2008-05-29 Saurabh Chheda Securing microprocessors against information leakage and physical tampering
US20080154379A1 (en) * 2006-12-22 2008-06-26 Musculoskeletal Transplant Foundation Interbody fusion hybrid graft
KR101239767B1 (ko) * 2007-11-12 2013-03-06 삼성전자주식회사 화상형성장치 및 그 제어방법
CN103971447B (zh) * 2013-02-04 2017-11-14 山东新北洋信息技术股份有限公司 纸币识别装置及其处理方法和纸币处理状态记录方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3478322A (en) * 1967-05-23 1969-11-11 Ibm Data processor employing electronically changeable control storage
JPS5242019B2 (de) * 1971-09-29 1977-10-21
BE795789A (fr) * 1972-03-08 1973-06-18 Burroughs Corp Microprogramme comportant une micro-instruction de recouvrement
US3828320A (en) * 1972-12-29 1974-08-06 Burroughs Corp Shared memory addressor
JPS5931744B2 (ja) * 1975-12-01 1984-08-03 インテル・コ−ポレ−シヨン Mosデジタルコンピユ−タ
GB1540923A (en) * 1975-12-01 1979-02-21 Intel Corp Programmable single chip mos computer
DE2738113C2 (de) * 1976-09-06 1998-07-16 Gao Ges Automation Org Vorrichtung zur Durchführung von Bearbeitungsvorgängen mit einem Identifikanden
JPS5427732A (en) * 1977-08-04 1979-03-02 Toshiba Corp Information processor
US4128873A (en) * 1977-09-20 1978-12-05 Burroughs Corporation Structure for an easily testable single chip calculator/controller
FR2461301A1 (fr) 1978-04-25 1981-01-30 Cii Honeywell Bull Microprocesseur autoprogrammable

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2916658A1 (de) 1978-04-25 1979-10-31 Cii Honeywell Bull Selbstprogrammierbarer mikroprozessor

Also Published As

Publication number Publication date
JPH0227687B2 (de) 1990-06-19
JPS63145531A (ja) 1988-06-17
DE2916658A1 (de) 1979-10-31
GB2022884B (en) 1982-09-29
US4382279A (en) 1983-05-03
HK25687A (en) 1987-04-03
FR2461301A1 (fr) 1981-01-30
JPH02132520A (ja) 1990-05-22
JPS54154954A (en) 1979-12-06
DE2954731C2 (de) 1994-09-01
FR2461301B1 (de) 1982-09-17
JPH06223206A (ja) 1994-08-12
GB2022884A (en) 1979-12-19
JPS6122828B2 (de) 1986-06-03

Similar Documents

Publication Publication Date Title
DE2916658C2 (de)
EP0512542B1 (de) Datenschützende Mikroprozessorschaltung für tragbare Datenträger, beispielsweise Kreditkarten
DE2061854C3 (de) Speicher aus Schieberegistern
DE2515696A1 (de) Anordnung zum selektiven loeschen von teilen beziehungsweise zum ersatz von daten in einem cache-speicher
DE2501853A1 (de) Prozessor fuer ein datenverarbeitungssystem
DE19536169A1 (de) Multifunktionale Chipkarte
EP0129054A1 (de) Schaltungsanordnung mit einem Datenspeicher und einer Ansteuereinheit zum Auslesen, Schreiben und Löschen des Speichers
CH619309A5 (de)
DE2652869A1 (de) Datensicherungseinrichtung
EP0935214B1 (de) Chipkarte mit integrierter Schaltung
DE2905676A1 (de) Integrierte schaltung mit einem einzigen chip
EP1352318B1 (de) Mikroprozessorschaltung für tragbare datenträger
DE4302553A1 (en) High security binary counting method for chip card - offsetting final state of binary number w.r.t. sequence such that contents of counter never represents number smaller than previous value
DE1285218B (de) Datenverarbeitungsanlage
EP0655688B1 (de) Programmspeichererweiterung für einen Mikroprozessor
DE2801853A1 (de) Integrierte digitale datenverarbeitungseinrichtung
DE2610428A1 (de) Anordnung zur steuerung der zwischenspeicherung von zwischen zwei funktionseinheiten zu uebertragenden daten in einem pufferspeicher
EP0880092B1 (de) Programmgesteuerte Einrichtung mit Nachlademöglichkeit für und Umschaltemöglichkeit auf zweites Betriebssystem ohne Programmunterbrechung
DE2954533C2 (de)
DE3016269C2 (de)
DE2440627C2 (de) Mikroprogrammierter Rechner
DE2715750B2 (de) Testschaltung für einen Mikrocomputer
DE2362117C3 (de)
DE3843725C2 (de)
DE1499203C (de) Schaltungsanordnung zum Speicherschutz bei Datenverarbeitungsanlagen mit Simultanbetrieb

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8127 New person/name/address of the applicant

Owner name: BULL S.A., PARIS, FR

8128 New person/name/address of the agent

Representative=s name: PRINZ, E., DIPL.-ING. LEISER, G., DIPL.-ING. SCHWE

D2 Grant after examination
8363 Opposition against the patent
8327 Change in the person/name/address of the patent owner

Owner name: BULL CP8, TRAPPES, FR

8369 Partition in:

Ref document number: 2954731

Country of ref document: DE

Format of ref document f/p: P

Q171 Divided out to:

Ref country code: DE

Ref document number: 2954731

AH Division in

Ref country code: DE

Ref document number: 2954731

Format of ref document f/p: P

8331 Complete revocation