DE19916120A1 - Ein-Chip-Mikrocomputer, der ECC-Daten intern erzeugen kann - Google Patents
Ein-Chip-Mikrocomputer, der ECC-Daten intern erzeugen kannInfo
- Publication number
- DE19916120A1 DE19916120A1 DE19916120A DE19916120A DE19916120A1 DE 19916120 A1 DE19916120 A1 DE 19916120A1 DE 19916120 A DE19916120 A DE 19916120A DE 19916120 A DE19916120 A DE 19916120A DE 19916120 A1 DE19916120 A1 DE 19916120A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- user data
- ecc
- eeprom
- ecc data
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Microcomputers (AREA)
- Detection And Correction Of Errors (AREA)
- Read Only Memory (AREA)
Abstract
In einem Ein-Chip-Mikrocomputer, der in einem Automobil verwendet wird, werden Fehlerkorrekturcodedaten zu entsprechenden Anwenderdaten hinzugefügt, und dann werden die resultierenden Anwenderdaten in einen EEPROM (8) gespeichert, um einen 1-Bit-Fehler zu korrigieren, der in diesen Anwenderdaten enthalten ist. Der Ein-Chip-Mikrocomputer ist aufgebaut durch einen elektrisch löschbaren Speicher (8) zum temporären Speichern von von außen zugeführten Anwenderdaten und von ECC-(Fehlerkorrekturcode)-Daten entsprechend den Anwenderdaten dort hinein; einen Programmspeicherungsspeicher (5) zum vorherigen Speichern eines Programms dort hinein; und eine CPU (Zentralverarbeitungseinheit) (2) zum Lesen des Programms vom Programmspeicherungsspeicher (5), um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von Fehlern, die in den von außen zugeführten Anwenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten entsprechend den von außen zugeführten Anwenderdaten.
Description
Die vorliegende Erfindung betrifft allgemein einen Ein-Chip-Mikrocomputer, der
ECC-Daten intern erzeugen kann, um die ECC-Daten zu Anwenderdaten hinzuzu
fügen. Genauer gesagt betrifft die vorliegende Erfindung einen derartigen Ein-Chip-
Mikrocomputer, der eine Arbeitsbelastung eines Anwenders reduzieren kann, und
der auch eine Speicherkapazität reduzieren kann, ohne eine auf den ECC-Daten
basierende EEPROM-Schreibzeit zu erhöhen.
EEPROMs (elektrisch löschbare programmierbare Nurlesespeicher) sind derartige
Speicher, die Daten löschen und/oder schreiben können (einschließlich Flash-
EEPROMs), und werden normalerweise in Ein-Chip-Mikrocomputern und ähnli
chem verwendet, die Programme speichern können. Zum Erhöhen der Zuverläs
sigkeit von Daten, die in EEPROMs gesichert sind, wird das folgende Fehlerkor
rekturverfahren effektiv angewendet. Das bedeutet, daß, während ECC-
(Fehlerkorrekturcode-)Daten zu Anwenderdaten hinzugefügt werden und dann die
resultierenden Anwenderdaten, denen die ECC-Daten hinzugefügt sind, gespei
chert werden, die Fehlerkorrektur unter Verwendung der ECC-Daten in bezug auf
die gelesenen Anwenderdaten ausgeführt wird. Herkömmlicherweise wird eine sol
che Operation zum Hinzufügen von ECC-Daten auf eine derartige Weise ausge
führt, daß, während die ECC-Daten aus den Anwenderdaten unter Verwendung
der dafür bestimmten Software erzeugt werden, die erzeugten ECC-Daten in Kom
bination mit den Anwenderdaten in den EEPROM gespeichert werden.
Beispielsweise führt ein Ein-Chip-Mikrocomputer, der zum Steuern eines Motors
eines Automobils verwendet wird, eine derartige wichtige Steuerung, wie beispiels
weise eine Motorendrehzahl-Steuerung und eine Kraftstoffeinspritzungs-
Steuerung, basierend auf einem Steuerprogramm aus. In dem Fall, daß ein Spei
cherinhalt eines ROM (Nurlesespeichers) zum vorherigen Speichern dieses Steu
erprogramms geändert wird, führt dieser Ein-Chip-Mikrocomputer eine anormale
Verarbeitungsoperation aus, was in einem gefährlichen Zustand resultiert. Als Fol
ge werden dann, wenn ein Anwender Anwenderdaten (ein Programm und ähnli
ches) in den ROM speichert, die ECC-Daten zusätzlich in diesem ROM gespei
chert. Wenn der Ein-Chip-Mikrocomputer die Anwenderdaten ausliest, kann dieser
Ein-Chip-Mikrocomputer dann, wenn ein Ein-Bit-Fehler auftritt, diesen 1-Bit-Fehler
korrigieren, und dieser Ein-Chip-Mikrocomputer kann dann, wenn ein Fehler von
mehr als 2-Bits auftritt, auch "anormale" Zustände anzeigen.
Weiterhin sollte ein Automobilhersteller dann, wenn ein Fehler bzw. ein Programm
fehler bzw. ein Hardwarefehler in bezug auf zuvor in einem ROM gespeicherten
Anwenderdaten (ein Computerprogramm) gefunden wird, verkaufte Automobile
zurückrufen, um die defekten Ein-Chip-Mikrocomputer durch richtig eingestellte
Ein-Chip-Mikrocomputer zu ersetzen. In diesem Fehlerfall ist es erforderlich, daß
dieser Automobilhersteller eine Motorsteuerungsanordnung ersetzt bzw. aus
tauscht, die einen defekten Ein-Chip-Mikrocomputer enthält, wenn ein ROM durch
einen wiederbeschreibbaren ROM aufgebaut ist, wie beispielsweise einen Masken-
ROM. In diesem Fall eines wiederbeschreibbaren ROM fallen notwendigerweise
nicht nur die Kosten für diese Motorsteuerungsanordnung an, sondern auch die
Austauschkosten. Als Ergebnis sollte dieser Automobilhersteller einen großen
Verlustbetrag akzeptieren. Unter einem solchen Umstand ist es dann, wenn ein
ROM eines Ein-Chip-Mikrocomputers durch einen EEPROM aufgebaut ist, für den
Automobilhersteller lediglich erforderlich, ein in diesem EEPROM gesichertes Pro
gramm über eine Verbindungsstelle dieses Ein-Chip-Mikrocomputers neu zu
schreiben, so daß ein Gesamtaufwand zum Lösen des Fehlerproblems reduziert
werden kann.
Fig. 20 ist ein erklärendes Diagramm zum Erklären eines in einem EEPROM aus
geführten herkömmlichen ECC-Daten-Erzeugungs/Hinzufügungsverfahrens. Nun
wird dieses herkömmliche ECC-Daten-Erzeugungs/Hinzufügungsverfahren unter
Bezugnahme auf Fig. 20 erklärt.
Zuerst bildet ein Anwender ein vorbestimmtes Programm aus (Schritt 101 der Fig.
20(a)), um ECC-Daten zu erzeugen. Es wird nun angenommen, daß als Anwen
derdaten 102 Daten eingegeben werden, die von 00000H bis zu 0FFFFH definiert
sind. Der Anwender erzeugt die ECC-Daten basierend auf den Anwenderdaten
durch Verwenden einer exklusiv angewendeten Software gemäß dem ausgebilde
ten Programm (Schritt 103 in Fig. 20(a)). Als Ergebnis werden von 10000H bis zu
14FFFH definierte Daten als die ECC-Daten 104 erzeugt. Als nächstes werden die
ECC-Daten 104 zu den Anwenderdaten 102 hinzugefügt, um von 00000H bis zu
14FFFH definierte Daten als Schreibdaten 105 zu erzeugen, und dann werden die
se erzeugten Schreibdaten in einen EEPROM geschrieben, der in einem Mikro
computer (nicht gezeigt) eingebaut ist (Schritt 106 in Fig. 20(a)). In diesem Fall
werden die Schreibdaten 105 mittels eines exklusiv angewendeten Datenschrei
bers oder auf eine On-Board-Schreibweise geschrieben.
Fig. 20(b) stellt eine Adressenabbildung auf den EEPROM dar. Bei dieser Adres
senabbildung sind Adressen von 00000H bis 0FFFFH als die Anwenderdaten zu
geteilt, und es sind auch Adressen von 10000H bis 14FFFH als die ECC-Daten
zugeteilt. In dem Fall von 16-Bit-Daten ist ein Umfang von 5 Bits für ECC-Daten
nötig. Als Ergebnis ist ein Datenbereich erforderlich, wie er in Fig. 20(b) gezeigt ist.
Jedoch gibt es bei dem oben beschriebenen herkömmlichen ECC-Daten-
Erzeugungs/Hinzufügungsverfahren deshalb, weil die ECC-Daten erzeugt werden
und die Anwenderdaten getrennt davon verarbeitet werden, ein derartiges Pro
blem, daß die exklusiv angewendete Software erforderlich ist, die die ECC-Daten
basierend auf den Anwenderdaten erzeugen kann.
Ebenso werden deshalb, weil die ECC-Daten bei den Adressen hinter den Anwen
derdaten abgebildet werden, die von 10000H bis zu 14FFFH definierten Daten zu
sätzlich zu den von 00000H bis zu 0FFFFH definierten Anwenderdaten als die
ECC-Daten geschrieben. Als Ergebnis gibt es ein weiteres Problem, daß die Da
tenschreibzeit um etwa 30 Prozent erhöht werden würde.
Weiterhin gibt es deshalb, weil die gesamte Datenmenge von Schreibdaten auf
grund der Verwendung dieser ECC-Daten um annähernd 30 Prozent erhöht wird,
ein weiteres Problem, daß die gesamte Speicherkapazität des externen Speichers
des gesamten Systems um nahezu 30 Prozent erhöht werden muß.
Andererseits ist herkömmlicherweise eine derartige herkömmliche technische Idee
vorgeschlagen worden, daß die durch Verwenden der Logikschaltungen aufge
baute ECC-Daten-Erzeugungsschaltung im Ein-Chip-Mikrocomputer eingebaut
wird. In allerjüngster Zeit sind Bitbreiten von Datenbussen, die in Ein-Chip
verwendet werden, immer größer geworden. Das bedeutet, daß, obwohl die her
kömmlichen Datenbusse Bitbreiten von 8 Bits besitzen, die aktuellen Datenbusse
eine Bitbreite von 32 Bits oder 64 Bits besitzen. Unter einem solchen Zustand ei
nes Trends zur breiten Bitbreite würde dann, wenn eine ECC-Daten-
Erzeugungsschaltung durch Logikschaltungen aufgebaut wird, ein gesamtes
Schaltungsausmaß in Verbindung mit einem Erhöhen einer solchen Bitbreite eines
Datenbusses auf eine exponentielle Weise erhöht werden. Daher würde ein Be
reich, der durch diese ECC-Daten-Erzeugungsschaltung in bezug auf einen Halb
leiterchip besetzt wird, notwendigerweise größer werden.
In dem Fall, daß ein EEPROM verwendet wird, um dort hinein ein in einem Ein-
Chip-Mikrocomputer angewendetes Programm zu speichern, wird eine ECC-Daten-
Erzeugungsschaltung nur dann angewendet, wenn dieses Computerprogramm
gespeichert ist, aber nicht angewendet, wenn dieses Computerprogramm ausge
führt wird. Nichts desto weniger würde eine derartige technische Idee, daß die
ECC-Daten-Erzeugungsschaltung mit dem großen Schaltungsausmaß in dem Ein-
Chip-Mikroprozessor eingebaut wird, dazu führen, daß die kosteneffektive Lei
stungscharakteristik dieses Ein-Chip-Mikrocomputers verschlechtert wird.
Angesichts der oben beschriebenen Probleme ist es eine Aufgabe der vorliegen
den Erfindung, einen Ein-Chip-Mikrocomputer zu schaffen, der ECC-Daten intern
erzeugen kann.
Es ist eine weitere Aufgabe der vorliegenden Erfindung, einen Ein-Chip-
Mikrocomputer zu schaffen, der eine Arbeitsbelastung reduzieren kann, die einem
Anwender auferlegt wird, und der weiterhin eine nötige Kapazität eines Speichers
reduzieren kann, ohne eine ECC-Daten-Schreibzeit eines EEPROM zu erhöhen.
Gemäß einem ersten Aspekt der vorliegenden Erfindung ist ein Mikrocomputer ge
schaffen, der folgendes aufweist:
einen elektrisch löschbaren Speicher zum temporären Speichern von von au ßen zugeführten Anwenderdaten und ECC-(Fehlerkorrekturcode-)Daten entspre chend den Anwenderdaten dort hinein;
einen Programmspeicherungsspeicher zum vorherigen Speichern eines Pro gramms dort hinein; und
eine CPU (Zentralverarbeitungseinheit) zum Lesen des Programms aus dem Programmspeicherungsspeicher, um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von Fehlern, die in den von außen zugeführten Anwenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten entsprechend den von außen zugeführten Anwenderdaten.
einen elektrisch löschbaren Speicher zum temporären Speichern von von au ßen zugeführten Anwenderdaten und ECC-(Fehlerkorrekturcode-)Daten entspre chend den Anwenderdaten dort hinein;
einen Programmspeicherungsspeicher zum vorherigen Speichern eines Pro gramms dort hinein; und
eine CPU (Zentralverarbeitungseinheit) zum Lesen des Programms aus dem Programmspeicherungsspeicher, um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von Fehlern, die in den von außen zugeführten Anwenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten entsprechend den von außen zugeführten Anwenderdaten.
Beim vorangehenden ist es wünschenswert, daß dann, wenn die von außen zuge
führten Anwenderdaten einen 1-Bit-Fehler enthalten, die CPU den 1-Bit-Fehler ba
sierend auf den vom elektrisch löschbaren Speicher gelesenen erzeugten ECC-
Daten korrigiert, wohingegen dann, wenn die von außen zugeführten Anwenderda
ten Fehler von mehr als 2-Bits enthalten, die CPU einen anormalen Zustand an
zeigt.
Weiterhin ist eine Betriebsart bevorzugt, bei welcher der elektrisch löschbare Spei
cher ein Flash-Speicher ist.
Gemäß einem zweiten Aspekt der vorliegenden Erfindung ist ein Ein-Chip-
Mikrocomputer geschaffen, der folgendes aufweist:
einen EEPROM (einen elektrisch löschbaren Nurlesespeicher) zum temporären Speichern von von außen zugeführten Anwenderdaten in seinen Anwenderdaten- Speicherungsbereich und ebenso zum temporären Speichern von ECC- (Fehlerkorrekturcode-)Daten entsprechend den Anwenderdaten in seinen ECC- Daten-Speicherungsbereich;
einen Nurlesespeicher zum vorherigen Speichern eines Programms dort hin ein; und
eine CPU (Zentralverarbeitungseinheit) zum Lesen des Programms aus dem Nurlesespeicher, um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von in den von außen zugeführten Anwenderdaten enthaltenen Fehlern unter Verwendung der erzeugten ECC-Daten.
einen EEPROM (einen elektrisch löschbaren Nurlesespeicher) zum temporären Speichern von von außen zugeführten Anwenderdaten in seinen Anwenderdaten- Speicherungsbereich und ebenso zum temporären Speichern von ECC- (Fehlerkorrekturcode-)Daten entsprechend den Anwenderdaten in seinen ECC- Daten-Speicherungsbereich;
einen Nurlesespeicher zum vorherigen Speichern eines Programms dort hin ein; und
eine CPU (Zentralverarbeitungseinheit) zum Lesen des Programms aus dem Nurlesespeicher, um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von in den von außen zugeführten Anwenderdaten enthaltenen Fehlern unter Verwendung der erzeugten ECC-Daten.
Bei dem zweiten Aspekt ist es vorzuziehen, daß, während eine zuvor ausgewählte
Menge der Anwenderdaten sequentiell von einer externen Datenquelle eingegeben
wird, die CPU die ECC-Daten aus der vorausgewählten Menge von Anwenderda
ten sequentiell erzeugt; sowohl die Anwenderdaten als auch die ECC-Daten ent
sprechen den Anwenderdaten jeweils in dem Anwenderdaten-Speicherungsbereich
des EEPROM und auch seinem ECC-Daten-Speicherungsbereich bei denselben
Adressen des EEPROM schreibt; und sowohl die Anwenderdaten als auch die
ECC-Daten aus den Anwenderdaten/ECC-Daten-Speicherungsbereichen bei den
selben Adressen liest, um die Fehlerkorrektur sequentiell durchzuführen.
Ebenso ist bevorzugt daß, während eine vorausgewählte Menge der Anwenderda
ten von einer externen Datenquelle sequentiell eingegeben wird, die CPU die ECC-
Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt,
bis ein Verarbeitungszyklus beendet ist; die Anwenderdaten und die ECC-Daten,
die erzeugt sind, nachdem ein Verarbeitungszyklus beendet worden ist, in den An
wenderdaten-Speicherungsbereich des EEPROM und seinen ECC-Daten-
Speicherungsbereich mit einer gegenüber der Adresse des Anwenderdaten-
Speicherungsbereichs um 1 dekrementierten Adresse schreibt; und auch sowohl
die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des
EEPROM gespeichert sind, liest, um die Fehlerkorrektur sequentiell durchzuführen.
Weiterhin ist es wünschenswert, daß, während eine vorausgewählte Menge der
Anwenderdaten von einer externen Datenquelle sequentiell eingegeben wird, die
CPU die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten se
quentiell erzeugt, bis ein Verarbeitungszyklus beendet ist; die Anwenderdaten und
ECC-Daten, nachdem ein Verarbeitungszyklus beendet worden ist, in den Anwen
derdaten-Speicherungsbereich des EEPROM und seinen ECC-Daten-
Speicherungsbereich jeweils bei denselben Adressen schreibt; und auch die im
Anwenderdaten-Speicherungsbereich des EEPROM gespeicherten Anwenderda
ten und in seinem ECC-Daten-Speicherungsbereich mit einer gegenüber der
Adresse des Anwenderdaten-Speicherungsbereichs um i inkrementierten Adresse
gespeicherte ECC-Daten liest, um die Fehlerkorrektur sequentiell durchzuführen.
Weiterhin ist es wünschenswert, daß, während eine vorausgewählte Menge von
Anwenderdaten von einer externen Datenquelle sequentiell eingegeben wird, die
CPU die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten se
quentiell erzeugt; ungültige Daten in dem Fall ausgibt, daß die Erzeugung der
ECC-Daten nicht erreicht wird, bis nächste Anwenderdaten eingegeben werden;
sowohl die Anwenderdaten als auch diesen entsprechende gültige ECC-Daten je
weils in dem Anwenderdaten-Speicherungsbereich des EEPROM und seinen ECC-
Daten-Speicherungsbereich bei denselben Adressen schreibt; und auch die An
wenderdaten und die ECC-Daten, die bei denselben Adressen der Anwenderda
ten/ECC-Daten-Speicherungsbereiche des EEPROM gespeichert sind, liest, um
die Fehlerkorrektur auszuführen.
Ebenso gibt es gemäß einem dritten Aspekt der vorliegenden Erfindung einen Ein-
Chip-Mikrocomputer, der folgendes aufweist:
einen EEPROM (einen elektrisch löschbaren programmierbaren Nurlesespei cher) zum temporären Speichern von sowohl Anwenderdaten als auch ECC- (Fehlerkorrekturcode-)Daten entsprechend den Anwenderdaten dort hinein jeweils in einen Anwenderdaten-Speicherungsbereich und einen ECC-Daten-Speiche rungsbereich;
eine Speicherungseinrichtung zum vorherigen Speichern dort hinein eines Pro gramms, das zum Erzeugen von ECC-Daten basierend auf Anwenderdaten ver wendet wird;
eine Schreibsteuerungseinrichtung zum Steuern eines Schreibens von sowohl den Anwenderdaten als auch den ECC-Daten in den EEPROM; und
eine CPU (Zentralverarbeitungseinheit) zum Erzeugen von ECC-Daten aus den im EEPROM gespeicherten Anwenderdaten gemäß dem Programm und zum Speichern der erzeugten ECC-Daten und der ursprünglichen Anwenderdaten in den PCC-Daten-Speicherungsbereich des EEPROM und seinen Anwenderdaten- Speicherungsbereich unter Steuerung der Schreibsteuerungseinrichtung; und weiterhin zum Lesen der im Anwenderdaten-Speicherungsbereich gespeicherten Anwenderdaten und der im ECC-Daten-Speicherungsbereich gespeicherten ECC- Daten, um einen in den Anwenderdaten enthaltenen Fehler basierend auf sowohl den gelesenen Anwenderdaten als auch den gelesenen ECC-Daten zu korrigieren.
einen EEPROM (einen elektrisch löschbaren programmierbaren Nurlesespei cher) zum temporären Speichern von sowohl Anwenderdaten als auch ECC- (Fehlerkorrekturcode-)Daten entsprechend den Anwenderdaten dort hinein jeweils in einen Anwenderdaten-Speicherungsbereich und einen ECC-Daten-Speiche rungsbereich;
eine Speicherungseinrichtung zum vorherigen Speichern dort hinein eines Pro gramms, das zum Erzeugen von ECC-Daten basierend auf Anwenderdaten ver wendet wird;
eine Schreibsteuerungseinrichtung zum Steuern eines Schreibens von sowohl den Anwenderdaten als auch den ECC-Daten in den EEPROM; und
eine CPU (Zentralverarbeitungseinheit) zum Erzeugen von ECC-Daten aus den im EEPROM gespeicherten Anwenderdaten gemäß dem Programm und zum Speichern der erzeugten ECC-Daten und der ursprünglichen Anwenderdaten in den PCC-Daten-Speicherungsbereich des EEPROM und seinen Anwenderdaten- Speicherungsbereich unter Steuerung der Schreibsteuerungseinrichtung; und weiterhin zum Lesen der im Anwenderdaten-Speicherungsbereich gespeicherten Anwenderdaten und der im ECC-Daten-Speicherungsbereich gespeicherten ECC- Daten, um einen in den Anwenderdaten enthaltenen Fehler basierend auf sowohl den gelesenen Anwenderdaten als auch den gelesenen ECC-Daten zu korrigieren.
Bei dem dritten Aspekt ist eine Betriebsart bevorzugt, bei welcher:
die CPU ein internes Register enthält, in welches eine vorausgewählte Menge von Anwenderdaten von einer externen Datenquelle sequentiell gespeichert wird;
der EEPROM weiterhin ein Anwenderdatenregister enthält, zu welchem die vorausgewählte Menge von Anwenderdaten übertragen wird, und ein ECC- Datenregister; und
die CPU ECC-Daten aus einer vorbestimmten Menge von in ihrem internen Register gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum im EEPROM enthaltenen ECC-Datenregister überträgt; sowohl die Anwenderdaten des Anwenderdatenregisters als auch die ECC-Daten des ECC-Datenregisters in den Anwenderdaten-Speicherungsbereich des EEPROM und seinen ECC-Daten- Speicherungsbereich bei denselben Adressen schreibt; und auch sowohl die An wenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM gespeichert sind, liest, um die Fehlerkorrektur durchzuführen.
die CPU ein internes Register enthält, in welches eine vorausgewählte Menge von Anwenderdaten von einer externen Datenquelle sequentiell gespeichert wird;
der EEPROM weiterhin ein Anwenderdatenregister enthält, zu welchem die vorausgewählte Menge von Anwenderdaten übertragen wird, und ein ECC- Datenregister; und
die CPU ECC-Daten aus einer vorbestimmten Menge von in ihrem internen Register gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum im EEPROM enthaltenen ECC-Datenregister überträgt; sowohl die Anwenderdaten des Anwenderdatenregisters als auch die ECC-Daten des ECC-Datenregisters in den Anwenderdaten-Speicherungsbereich des EEPROM und seinen ECC-Daten- Speicherungsbereich bei denselben Adressen schreibt; und auch sowohl die An wenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM gespeichert sind, liest, um die Fehlerkorrektur durchzuführen.
Weiterhin ist eine Betriebsart wünschenswert, bei welcher:
die Schreibsteuerungseinrichtung weiterhin ein Anwenderdaten-Stapelregister enthält, in welches eine vorausgewählte Menge von Anwenderdaten von einer ex ternen Datenquelle gespeichert wird, und ein ECC-Daten-Stapelregister;
die CPU weiterhin ein internes Register enthält, in welches eine vorausgewähl te Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU in einem ersten Verarbeitungszyklus bei einer ersten Adresse gespei cherte Anwenderdaten zu dem in der Schreibsteuerungseinrichtung enthaltenen Anwenderdatenregister überträgt und die zum Anwenderdatenregister übertragene Anwenderdatenspeicherung in den im EEPROM enthaltenen Anwenderdatenbe reich speichert;
die CPU in einem nächsten Verarbeitungszyklus und darauffolgenden Verar beitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vorangehen den Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungseinrichtung enthaltenen ECC-Daten-Sta pelregister überträgt; die Anwenderdaten zum im EEPROM enthaltenen Anwen derdaten-Stapelregister überträgt und auch die ECC-Daten zum ECC- Datenregister; eine Schreibadresse in bezug auf den ECC-Daten- Speicherungsbereich des EEPROM um 1 dekrementiert; und sowohl die im An wenderdatenregister gespeicherten Anwenderdaten als auch die im ECC- Datenregister gespeicherten ECC-Daten jeweils in sowohl den Anwenderdaten- Speicherungsbereich als auch den ECC-Daten-Speicherungsbereich schreibt; und auch ihre oben definierten Verarbeitungsoperationen wiederholt ausführt;
die CPU in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbe stimmten Menge von im vorangehenden Verarbeitungszyklus gespeicherten An wenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungsein richtung enthaltenen ECC-Daten-Stapelregister überträgt; die erzeugten ECC- Daten zum im EEPROM enthaltenen ECC-Datenregister überträgt; eine Schreiba dresse in bezug auf den ECC-Daten-Speicherungsbereich des EEPROM um 1 de krementiert; und die im ECC-Daten-Speicherungsbereich des EEPROM gespei cherten ECC-Daten schreibt;
die CPU sowohl die Anwenderdaten als auch die ECC-Daten, die bei densel ben Adressen des EEPROM gespeichert sind, liest, um die Fehlerkorrekturen se quentiell auszuführen.
die Schreibsteuerungseinrichtung weiterhin ein Anwenderdaten-Stapelregister enthält, in welches eine vorausgewählte Menge von Anwenderdaten von einer ex ternen Datenquelle gespeichert wird, und ein ECC-Daten-Stapelregister;
die CPU weiterhin ein internes Register enthält, in welches eine vorausgewähl te Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU in einem ersten Verarbeitungszyklus bei einer ersten Adresse gespei cherte Anwenderdaten zu dem in der Schreibsteuerungseinrichtung enthaltenen Anwenderdatenregister überträgt und die zum Anwenderdatenregister übertragene Anwenderdatenspeicherung in den im EEPROM enthaltenen Anwenderdatenbe reich speichert;
die CPU in einem nächsten Verarbeitungszyklus und darauffolgenden Verar beitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vorangehen den Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungseinrichtung enthaltenen ECC-Daten-Sta pelregister überträgt; die Anwenderdaten zum im EEPROM enthaltenen Anwen derdaten-Stapelregister überträgt und auch die ECC-Daten zum ECC- Datenregister; eine Schreibadresse in bezug auf den ECC-Daten- Speicherungsbereich des EEPROM um 1 dekrementiert; und sowohl die im An wenderdatenregister gespeicherten Anwenderdaten als auch die im ECC- Datenregister gespeicherten ECC-Daten jeweils in sowohl den Anwenderdaten- Speicherungsbereich als auch den ECC-Daten-Speicherungsbereich schreibt; und auch ihre oben definierten Verarbeitungsoperationen wiederholt ausführt;
die CPU in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbe stimmten Menge von im vorangehenden Verarbeitungszyklus gespeicherten An wenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungsein richtung enthaltenen ECC-Daten-Stapelregister überträgt; die erzeugten ECC- Daten zum im EEPROM enthaltenen ECC-Datenregister überträgt; eine Schreiba dresse in bezug auf den ECC-Daten-Speicherungsbereich des EEPROM um 1 de krementiert; und die im ECC-Daten-Speicherungsbereich des EEPROM gespei cherten ECC-Daten schreibt;
die CPU sowohl die Anwenderdaten als auch die ECC-Daten, die bei densel ben Adressen des EEPROM gespeichert sind, liest, um die Fehlerkorrekturen se quentiell auszuführen.
Weiterhin ist bevorzugt, daß
die Schreibsteuerungseinrichtung weiterhin ein An wenderdaten-Stapelregister enthält, in welches eine vorausgewählte Menge von Anwenderdaten von einer externen Datenquelle gespeichert wird, und ein ECC- Daten-Stapelregister;
die CPU weiterhin ein internes Register enthält, in welches eine vorausgewähl te Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU in einem ersten Verarbeitungszyklus bei einer ersten Adresse gespei cherte Anwenderdaten zum in der Schreibsteuerungseinrichtung enthaltenen An wenderdatenregister überträgt und die zum Anwenderdatenregister übertragenen Anwenderdaten in den im EEPROM enthaltenen Anwenderdaten- Speicherungsbereich speichert;
die CPU in einem nächsten Verarbeitungszyklus und in darauffolgenden Ver arbeitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vorangehen den Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungseinrichtung enthaltenen ECC-Daten- Stapelregister überträgt; die Anwenderdaten zum im EEPROM enthaltenen An wenderdaten-Stapelregister überträgt und auch die ECC-Daten zum ECC- Datenregister; und sowohl die im Anwenderdatenregister gespeicherten Anwen derdaten als auch die im ECC-Datenregister gespeicherten ECC-Daten jeweils in sowohl den Anwenderdaten-Speicherungsbereich als auch den ECC-Daten- Speicherungsbereich des EEPROM schreibt; und auch ihre oben definierten Ver arbeitungsoperationen wiederholt ausführt;
die CPU in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbe stimmten Menge von im vorangehenden Verarbeitungszyklus gespeicherten An wenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungsein richtung enthaltenen ECC-Daten-Stapelregister überträgt; die erzeugten ECC- Daten zum im EEPROM enthaltenen ECC-Datenregister überträgt; und die im ECC-Datenbereich des EEPROM gespeicherten ECC-Daten schreibt; und auch sowohl Anwenderdaten des EEPROM als auch bei einer gegenüber einer Adresse der gelesenen Anwenderdaten um i inkrementierten Adresse gespeicherte ECC- Daten liest, um die Fehlerkorrektur sequentiell auszuführen.
die Schreibsteuerungseinrichtung weiterhin ein An wenderdaten-Stapelregister enthält, in welches eine vorausgewählte Menge von Anwenderdaten von einer externen Datenquelle gespeichert wird, und ein ECC- Daten-Stapelregister;
die CPU weiterhin ein internes Register enthält, in welches eine vorausgewähl te Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU in einem ersten Verarbeitungszyklus bei einer ersten Adresse gespei cherte Anwenderdaten zum in der Schreibsteuerungseinrichtung enthaltenen An wenderdatenregister überträgt und die zum Anwenderdatenregister übertragenen Anwenderdaten in den im EEPROM enthaltenen Anwenderdaten- Speicherungsbereich speichert;
die CPU in einem nächsten Verarbeitungszyklus und in darauffolgenden Ver arbeitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vorangehen den Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungseinrichtung enthaltenen ECC-Daten- Stapelregister überträgt; die Anwenderdaten zum im EEPROM enthaltenen An wenderdaten-Stapelregister überträgt und auch die ECC-Daten zum ECC- Datenregister; und sowohl die im Anwenderdatenregister gespeicherten Anwen derdaten als auch die im ECC-Datenregister gespeicherten ECC-Daten jeweils in sowohl den Anwenderdaten-Speicherungsbereich als auch den ECC-Daten- Speicherungsbereich des EEPROM schreibt; und auch ihre oben definierten Ver arbeitungsoperationen wiederholt ausführt;
die CPU in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbe stimmten Menge von im vorangehenden Verarbeitungszyklus gespeicherten An wenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungsein richtung enthaltenen ECC-Daten-Stapelregister überträgt; die erzeugten ECC- Daten zum im EEPROM enthaltenen ECC-Datenregister überträgt; und die im ECC-Datenbereich des EEPROM gespeicherten ECC-Daten schreibt; und auch sowohl Anwenderdaten des EEPROM als auch bei einer gegenüber einer Adresse der gelesenen Anwenderdaten um i inkrementierten Adresse gespeicherte ECC- Daten liest, um die Fehlerkorrektur sequentiell auszuführen.
Bei dem oben beschriebenen Ein-Chip-Mikrocomputer werden die Anwenderdaten
von außen eingegeben, erzeugt die CPU sequentiell die ECC-Daten aus einer vor
ausgewählten Menge von eingegebenen Anwenderdaten gemäß dem internen
Programm, und darauffolgend werden sowohl die Anwenderdaten als auch die die
sen entsprechenden erzeugten ECC-Daten in den Anwenderdaten-Spei
cherungsbereich und den ECC-Daten-Speicherungsbereich des EEPROM gespei
chert. Als Folge kann die dem Anwender auferlegte Arbeitsbelastung stark redu
ziert werden, verglichen mit der Arbeitsbelastung eines Anwenders in einem derar
tigen Fall, daß die ECC-Daten außerhalb des Ein-Chip-Mikrocomputers erzeugt
werden. Weiterhin können deshalb, weil ein solcher externer Speicher zum tempo
rären Speichern der erzeugten ECC-Daten dort hinein nicht mehr erforderlich ist,
um die ECC-Daten zu erzeugen, die Kosten für das gesamte System verringert
werden. Zusätzlich kann deshalb, weil sowohl die Anwenderdaten als auch die
ECC-Daten gleichzeitig in den EEPROM geschrieben werden, die Datenschreibzeit
in bezug auf den EEPROM reduziert werden, verglichen mit der Datenschreibzeit,
die dann erforderlich ist, wenn die ECC-Daten vom externen Speicher in diesen
EEPROM geschrieben werden.
Die obigen und weitere Aufgaben, Vorteile und Merkmale der vorliegenden Erfin
dung werden aus der folgenden Beschreibung in Zusammenhang mit den beige
fügten Zeichnungen klarer, wobei:
Fig. 1 ein Schaltungsblockdiagramm eines Ein-Chip-Mikrocomputers gemäß
einem Ausführungsbeispiel der vorliegenden Erfindung schematisch
zeigt;
Fig. 2 ein Schaltungsblockdiagramm einer beim Ein-Chip-Mikrocomputer
der Fig. 1 verwendeten EEPROM-Steuerschaltung schematisch dar
stellt;
Fig. 3 ein Schaltungsblockdiagramm einer beim Ein-Chip-Mikrocomputer
der Fig. 1 verwendeten Daten-Latch-Auswahl/Steuerschaltung sche
matisch zeigt;
Fig. 4 ein Schaltungsblockdiagramm einer beim Ein-Chip-Mikrocomputer
der Fig. 1 verwendeten Schreibsignal-Erzeugungsschaltung schema
tisch zeigt;
Fig. 5 ein Operations-Zeitdiagramm der Schreibsignal-Erzeugungsschaltung
darstellt;
Fig. 6 ein Ablaufdiagramm zum Beschreiben einer ersten Operations-
Verarbeitungsfolge des in Fig. 1 gezeigten Ein-Chip-Mikrocomputers
ist;
Fig. 7 ein Ablaufdiagramm zum Beschreiben der ersten Operations-
Verarbeitungsfolge des in Fig. 1 gezeigten Ein-Chip-Mikrocomputers
ist;
Fig. 8 ein Zeitdiagramm während einer Schreiboperation bei einem ersten
Operationsbeispiel darstellt;
Fig. 9 ein Ablaufdiagramm zum Erklären einer zweiten Operations-
Verarbeitungsfolge des in Fig. 1 gezeigten Ein-Chip-Mikrocomputers
ist;
Fig. 10 ein Ablaufdiagramm zum Erklären der zweiten Operations-
Verarbeitungsfolge des in Fig. 1 gezeigten Ein-Chip-Mikrocomputers
ist;
Fig. 11 ein Zeitdiagramm darstellt, wenn eine ECC-Adresse während einer
Schreiboperation verschoben wird;
Fig. 12 ein Schaltungsblockdiagramm einer EEPROM-Adressen-
Erzeugungsschaltung schematisch zeigt, wenn die ECC-Adresse
während einer Schreiboperation verschoben wird;
Fig. 13 ein Ablaufdiagramm zum Erklären einer dritten Operation des in Fig.
1 gezeigten Ein-Chip-Mikrocomputers ist;
Fig. 14 ein Ablaufdiagramm zum Erklären der dritten Operation des in Fig. 1
gezeigten Ein-Chip-Mikrocomputers ist;
Fig. 15 ein Zeitdiagramm darstellt, wenn eine ECC-Adresse während der Le
seoperation verschoben wird;
Fig. 16 ein Schaltungsblockdiagramm einer EEPROM-Adressen-
Erzeugungsschaltung schematisch zeigt, wenn die ECC-Adresse
während einer Leseoperation verschoben wird;
Fig. 17 ein Ablaufdiagramm zum Erklären einer vierten Operation des in Fig.
1 gezeigten Ein-Chip-Mikrocomputers ist;
Fig. 18 ein Ablaufdiagramm zum Erklären der vierten Operation des in Fig. 1
gezeigten Ein-Chip-Mikrocomputers ist;
Fig. 19 ein Zeitdiagramm zeigt, wenn die vierte Operation während einer
Schreiboperation ausgeführt wird; und
Fig. 20 ein erklärendes Diagramm zum Erklären des im EEPROM ausgeführ
ten herkömmlichen ECC-Daten-Erzeugungs/Hinzufügungsverfahrens
ist.
Unter Bezugnahme auf die Zeichnungen werden verschiedene bevorzugte Ausfüh
rungsbeispiele der vorliegenden Erfindung detaillierter beschrieben.
Vor einem Beschreiben eines Ein-Chip-Mikroprozessors gemäß einem Ausfüh
rungsbeispiel der vorliegenden Erfindung werden Inhalte der Zeichnungen, die sich
auf diesen Ein-Chip-Mikroprozessor beziehen, detailliert erklärt.
Fig. 1 zeigt schematisch ein Schaltungsblockdiagramm eines Ein-Chip-
Mikrocomputers gemäß einem Ausführungsbeispiel der vorliegenden Erfindung.
Fig. 2 stellt ein Schaltungsblockdiagramm einer im Ein-Chip-Mikrocomputer der
Fig. 1 verwendeten EEPROM-Steuerschaltung schematisch dar. Fig. 3 zeigt sche
matisch ein Schaltungsblockdiagramm einer im Ein-Chip-Mikrocomputer der Fig. 1
verwendeten Daten-Latch-Auswahl/Steuerschaltung. Fig. 4 zeigt schematisch ein
Schaltungsblockdiagramm einer im Ein-Chip-Mikrocomputer der Fig. 1 verwende
ten Schreibsignal-Erzeugungsschaltung. Fig. 5 stellt ein Operations-Zeitdiagramm
der Schreibsignal-Erzeugungsschaltung dar. Fig. 6 und Fig. 7 sind Ablaufdiagram
me zum Beschreiben einer ersten Operations-Verarbeitungsfolge des in Fig. 1 ge
zeigten Ein-Chip-Mikrocomputers. Fig. 8 stellt ein Zeitdiagramm während einer
Schreiboperation bei einem ersten Operations- bzw. Betriebsbeispiel dar. Fig. 9
und Fig. 10 sind Ablaufdiagramme zum Erklären einer zweiten Operations-
Verarbeitungsfolge des in Fig. 1 gezeigten Ein-Chip-Mikrocomputers. Fig. 11 stellt
ein Zeitdiagramm dar, wenn eine ECC-Adresse während einer Schreiboperation
verschoben wird. Fig. 12 zeigt schematisch ein Schaltungsblockdiagramm einer
EEPROM-Adressen-Erzeugungsschaltung, wenn die ECC-Adresse während einer
Schreiboperation verschoben wird. Fig. 13 und Fig. 14 sind Ablaufdiagramme zum
Erklären einer dritten Operation des in Fig. 1 gezeigten Ein-Chip-Mikrocomputers.
Fig. 15 stellt ein Zeitdiagramm dar, wenn eine ECC-Adresse während einer Le
seoperation verschoben wird. Fig. 16 zeigt schematisch ein Schaltungsblockdia
gramm einer EEPROM-Adressen-Erzeugungsschaltung, wenn die ECC-Adresse
während einer Leseoperation verschoben wird. Fig. 17 und Fig. 18 sind Ablaufdia
gramme zum Erklären einer vierten Operation des in Fig. 1 gezeigten Ein-Chip-
Mikrocomputers. Fig. 19 zeigt ein Zeitdiagramm, wenn die vierte Operation wäh
rend einer Schreiboperation ausgeführt wird.
Wie es in Fig. 1 gezeigt ist, ist der Ein-Chip-Mikrocomputer dieses Ausführungsbei
spiels der vorliegenden Erfindung hauptsächlich aufgebaut durch ein Ein
gangs/Ausgangs-Port 1, eine CPU (Zentralverarbeitungseinheit) 2, einen Adres
senbus 3, einen Datenbus 4, einen Firmware-ROM (Nurlesespeicher) 5, einen
RAM (Direktzugriffsspeicher) 6, einen EEPROM (einen elektrisch löschbaren pro
grammierbaren ROM) 8, eine EEPROM-Steuerschaltung 7, eine Fehlerkorrektur
schaltung 9 und eine Datenauswahlschaltung 10.
Das Eingangs-Port 1 ist aufgebaut durch eine Vielzahl von Anschlußstellenports
zum Eingeben/Ausgeben von Daten zwischen diesem Ein-Chip-Mikrocomputer und
einer externen Vorrichtung. Die CPU 2 steuert eine Gesamtoperation des Ein-Chip-
Mikrocomputers gemäß diesem Ausführungsbeispiel durch Steuern einer Interpre
tation eines Befehls und einer Ausführung eines Befehls, der von einem Programm
ausgegeben wird. Der Adressenbus 3 wird zum Übertragen eines Adressensignals
zwischen verschiedenen Schaltungsteilen innerhalb dieses Ein-Chip-Mikro
computers verwendet. Der Firmware-ROM 5 speichert dort hinein Firmware
(nämlich ein Mikroprogramm), die zum Betreiben dieses Ein-Chip-Mikrocomputers
erforderlich ist. Bei diesem Ausführungsbeispiel speichert dieser Firmware-ROM 5
dort hinein ein ECC-Daten-Erzeugungsprogramm. Der RAM 6 ist ein derartiger Di
rektzugriffsspeicher, der hauptsächlich als Arbeitsbereich der CPU 2 verwendet
wird.
Die EEPROM-Steuerschaltung 7 ist eine derartige Steuerschaltung zum Steuern
von Lese/Schreib-Operationen des EEPROM 8. Diese EEPROM-Steuerschaltung
7 enthält einen Inhalt (der später diskutiert wird) und enthält ein Anwenderdaten-
Stapelregister 71 und ein ECC-Daten-Stapelregister 72, um Daten zu stapeln. Der
EEPROM 8 entspricht einem fixierenden Speicherungselement zum elektrischen
Schreiben/Löschen von Informationen. Dieser EEPROM 8 enthält sowohl ein An
wenderdatenregister 81 als auch ECC-Datenregister 82, um Daten dort hinein zu
schreiben, und enthält weiterhin sowohl einen Anwenderdatenbereich 83 als auch
einen ECC-Datenbereich 84, um Daten dort hinein zu speichern. Es sollte beachtet
werden, daß dieser EEPROM 8 durch entweder den normalen EEPROM oder ei
nen Flash-EEPROM realisiert werden kann.
Die Fehlerkorrekturschaltung 9 korrigiert einen Fehler, der in Daten enthalten ist,
durch Erfassen dieses Datenfehlers basierend auf ECC-(Fehlerkorrekturcode)-
Daten, die zu den Daten hinzugefügt sind. Die Datenauswahlschaltung 10 unter
teilt 32-Bit-Daten, die von der Fehlerkorrekturschaltung 9 ausgegeben werden, in
höherwertige 16-Bit-Daten und niederwertige 16-Bit-Daten und überträgt dann die
se 16-Bit-Daten abwechselnd zum Datenbus 4.
Wie es in Fig. 2 gezeigt ist, ist die oben beschriebene EEPROM-Steuerschaltung 7
durch Verwenden eines Adressenbusses 11, eines Datenbusses 12, einer Daten-
Latch-Auswahl/Steuerschaltung 13, eines Datenlatchs 14 für eine Adresse "n" ei
nes Datenlatchs 15 für eine Adresse "n+2", eines Datenlatchs 16 für ECC-Daten,
einer Schreibsignal-Erzeugungsschaltung 17 und einer EEPROM-Adressen-
Erzeugungsschaltung 18 aufgebaut. In diesem Fall erfolgt die folgende Beschrei
bung unter Verwendung einer Adresse "n" von von außen zugeführten Anwen
derdaten als Referenz. Der Adressenbus 11 bildet einen Teil des oben erklärten
Adressenbusses 3 und überträgt ein Adressensignal. Der Datenbus 12 bildet einen
Teil des oben erklärten Datenbusses 4 und überträgt ein Datensignal. Die Daten-
Latch-Auswahl/Steuerschaltung 13 erzeugt Steuersignale DL1, DL2, DL3 gemäß
Informationen des Adressenbusses 11. Diese Steuersignale DL1, DL2 und DL3
werden zum selektiven Zwischenspeichern von Daten verwendet, die auf dem Da
tenbus 12 erscheinen, durch den Daten-Latch 14 für die Adresse "n", den Daten-
Latch 15 für die Adresse "n+2" und den Daten-Latch 16 für die ECC-Daten. Ein
interner Aufbau dieser Daten-Latch-Auswahl/Steuerschaltung 13 wird später er
klärt. Der Daten-Latch 14 für die Adresse "n" speichert 2-Byte-(16-Bits)-Daten von
sowohl der Adresse "n" als auch der Adresse (n+1) auf dem Datenbus 12 zwi
schen, wenn das Steuersignal DL1 aktiv wird, und speichert Daten zwischen, um
dadurch in dem Fall die zwischengespeicherten Daten zum Speicher des EEPROM
8 auszugeben, daß ein Bit 1 einer Adresse gleich "0" ist.
Der Daten-Latch 15 für die Adresse "n+2" speichert 2-Byte-(16 Bit)-Daten von so
wohl der Adresse (n+2) als auch der Adresse (n+3) auf dem Datenbus 12 zwi
schen, wenn das Steuersignal DL2 aktiv wird, und speichert Daten zwischen, um
dadurch in dem Fall die zwischengespeicherten Daten zum Speicher des EEPROM
8 auszugeben, daß ein Bit 1 einer Adresse gleich "1" ist. Der Daten-Latch 16 für
den ECC speichert niederwertige 6-Bit-Daten zwischen, die auf dem Datenbus 12
erscheinen, wenn das Steuersignal DL3 aktiv wird, und speichert Daten zwischen,
um dadurch die zwischengespeicherten Daten zur Speicherzelle des EEPROM 8
auszugeben, wenn die ECC-Adresse ausgegeben wird.
Die Schreibsignal-Erzeugungsschaltung 17 erzeugt sowohl ein Schreib-Setzsignal
als auch ein Schreib-Rücksetzsignal basierend auf sowohl Informationen des
Adressenbusses 11 als auch den Informationen des Datenbusses 12. Dieses
Schreib-Setzsignal wird zum Steuern eines Beginns einer Schreiboperation in be
zug auf den EEPROM 8 verwendet. Das Schreib-Rücksetzsignal wird zum Steuern
einer Beendigung einer Schreiboperation in bezug auf diesen EEPROM 8 verwen
det. Ein interner Aufbau dieser Schreibsignal-Erzeugungsschaltung 17 wird später
diskutiert. Die EEPROM-Adressen-Erzeugungsschaltung 18 erzeugt eine Adresse
in bezug auf den EEPROM 8 basierend auf Informationen des Adressenbusses 11.
Diese EEPROM-Adressen-Erzeugungsschaltung 18 legt Bits 2 bis 15 des Adres
senbusses 11 als Adressen 0 bis 13 eines Datenbereichs des EEPROM 8 über
einen Adressendecodierer (nicht gezeigt) an einen Datenbereich (Anwender
speicher) dieses EEPROM 8 an, und legt weiterhin Bits 2 bis 15 des Adressenbus
ses 11 als Adressen 0 bis 13 eines ECC-Datenbereichs des EEPROM 8 über eine
Dekrementierschaltung (nicht gezeigt) und einen weiteren Adressendecodierer
(auch nicht gezeigt) an den ECC-Datenbereich dieses EEPROM 8 an. Der Grund,
warum eine solche Adressenumwandlung ausgeführt wird, ist nachfolgend ange
geben. Das bedeutet, daß das Adressensignal in einer Einheit von "Byte" (8 Bits)
gegeben ist, wohingegen das am wenigsten signifikante Bit (LSB) von 2 Bits nicht
als eine Adresse entsprechend den 32-Bit-Eingangs/Ausgangs-Daten des
EEPROM 8 erforderlich ist. Es sollte auch beachtet werden, daß deshalb, weil Da
ten eine Breite von 16 Bits haben, der Daten-Latch 14 für die Adresse "n" sowohl
die Daten der Adresse "n" als auch die Daten der Adresse (n+1) zwischenspei
chert, und auch der Daten-Latch 15 für die Adresse (n+2) sowohl die Daten der
Adresse (n+2) als auch die Daten der Adresse (n+3) in bezug auf die externe
Adresse "n" zwischenspeichert.
Wie es in Fig. 3 gezeigt ist, ist die oben erklärte Daten-Latch-
Auswahl/Steuerschaltung 13 durch Verwenden eines Adressenbusses 131, einer
NOR-Gatterschaltung 132, eines Inverters 133 und einer weiteren NOR-
Gatterschaltung 134 aufgebaut.
Der Adressenbus 131 bildet einen Teil des Adressenbusses 11 und überträgt ein
Adressensignal. Die NOR-Gatterschaltung 132 gibt das Steuersignal DL1 in bezug
auf den Daten-Latch 14 für die Adresse "n" aus, wenn sowohl das Bit 1 des Adres
senbusses 131, das den Datenbereich des EEPROM 8 anzeigt, als auch das Bit
16 des Adressenbusses 131, das den ECC-Datenbereich anzeigt, inaktiv sind. So
wohl der Inverter 133 als auch die NOR-Gatterschaltung 134 geben das Steuersi
gnal DL2 in bezug auf den Daten-Latch 15 für die Adresse (n+2) aus, wenn das Bit
1 des Adressenbusses 131, das den Datenbereich des EEPROM 8 anzeigt, aktiv
wird, und das Bit 16 des Adressenbusses 131, das den ECC-Datenbereich anzeigt,
inaktiv wird. Andererseits geben dieser Inverter 133 und diese NOR-
Gatterschaltung 134 dann, wenn das Bit 16 des Adressenbusses 131 aktiv wird,
das Steuersignal DL3 in bezug auf den Daten-Latch 16 für den ECC aus.
Wie es in Fig. 4 dargestellt ist, ist die Schreibsignal-Erzeugungsschaltung 17 derart
aufgebaut, daß sie einen Adressenbus 171, einen Datenbus 172, einen Adressen
decodierer 173, ein Flip-Flop (FF) 174, ein weiteres Flip-Flop 175, einen Inverter
176 und eine UND-Gatterschaltung 177 enthält.
Operationen bzw. ein Betrieb dieser Schreibsignal-Erzeugungsschaltung 17 sind
bzw. ist durch ein Zeitdiagramm der Fig. 5 dargestellt. Der Adressenbus 171 bildet
einen Teil des Adressenbusses 11 und überträgt ein Adressensignal. Der Daten
bus 172 bildet einen Teil des Datenbusses 12 und überträgt ein Datensignal. Der
Adressendecodierer 173 gibt ein Adressen-Koinzidenzsignal in einem derartigen
Fall aus, daß eine Adresse auf dem Adressenbus 171, die von der CPU 2 ausge
geben wird, mit einer spezifischen Adresse koinzident gemacht wird, die zuvor ein
gestellt ist, und kann eine Erzeugung eines Schreibsignals zum EEPROM 8 befeh
len. Wenn das Adressen-Koinzidenzsignal vom Adressendecodierer 173 ausgege
ben wird, speichert sowohl das Flip-Flop 174 als auch das Flip-Flop 175 jeweils ein
Datenbit 0 und ein Datenbit 1 des Datenbusses 172 zwischen. Als Ergebnis wird
ein Schreib-Setzsignal von der UND-Gatterschaltung 177 unter einer derartigen
Bedingung ausgegeben, daß ein Schreib-Rücksetzsignal nicht ausgegeben wird,
wenn das Schreib-Rücksetzsignal in Antwort auf das Datenbit 1 ausgegeben wird
und das Datenbit 0 ausgegeben wird. Im EEPROM 8 werden sowohl die Anwen
derdaten als auch die ECC-Daten innerhalb einer Zeitperiode geschrieben, wäh
rend ein Schreibimpuls aktiv ist, und zwar durch Veranlassen, daß der Schreibim
puls durch das Schreib-Setzsignal ansteigt, und auch durch Veranlassen, daß der
Schreibimpuls durch das Schreib-Rücksetzsignal abfällt.
Unter Bezugnahme auf Fig. 6, Fig. 7 und Fig. 8 wird eine erste Operation, die im
EEPROM 8 ausgeführt wird, wie folgt erklärt: das bedeutet, daß die erste Operati
on ein Verarbeitungsverfahren zeigt, das in einem derartigen Fall ausgeführt wird,
daß deshalb, weil eine Schreiboperation des EEPROM 8 mit einer niedrigen Ge
schwindigkeit durchgeführt wird, ECC-Daten innerhalb einer Breite eines Schrei
bimpulses erzeugt werden können.
Es wird nun angenommen, daß sowohl eine erste Adresse von Anwenderdaten als
auch eine letzte Adresse dieser Anwenderdaten zuvor in einer externen Datei
(nicht detailliert gezeigt) zum Speichern der Anwenderdaten darin bestimmt sind.
Nachdem 4-Byte-Daten durch wiederholtes Ausführen einer derartigen Verarbei
tungsoperation gespeichert worden sind (Schritt 3), daß die Anwenderdaten ab der
ersten Adresse der externen Datei in den Eingangs/Ausgangs-Port 1 eingegeben
werden (Schritt S1) und dann über den Datenbus 4 in die interne Registergruppe 21
der CPU 2 gespeichert werden, werden diese Anwenderdaten von der internen
Registergruppe 21 über den Datenbus 4 zum in der EEPROM-Steuerschaltung 7
vorgesehenen Anwenderdaten-Stapelregister 71 übertragen (Schritt S4). Weiterhin
werden diese Anwenderdaten zum innerhalb des EEPROM 8 vorgesehenen An
wenderdatenregister 81 übertragen (Schritt S5).
Andererseits liest die CPU 2 das im Firmware-ROM 5 gespeicherte ECC-
Erzeugungsprogramm aus, um dieses gelesene ECC-Erzeugungsprogramm aus
zuführen, so daß diese CPU 2 die ECC-Daten basierend auf den gespeicherten
4-Byte-Daten erzeugt (Schritt S6), und die ECC-Daten über den Datenbus 4 zum in
der EEPROM-Steuerschaltung 7 vorgesehenen ECC-Daten-Stapelregister 72
überträgt (Schritt S7). Weiterhin überträgt die CPU 2 diese ECC-Daten zum im
EEPROM 8 vorgesehenen ECC-Datenregister 82 (Schritt S8).
Dann wird die unten angegebene Schreib-Verarbeitungsoperation wiederholt aus
geführt, bis alle in den 4-Byte-Daten enthaltenen Daten vollständig geschrieben
worden sind (Schritt S10). Bei dieser Schreib-Verarbeitungsoperation werden so
wohl die Anwenderdaten des Anwenderdatenregisters 81 als auch die ECC-Daten
des ECC-Datenregisters 82 in den Anwenderdatenbereich 83 des EEPROM 8 und
seinen ECC-Datenbereich 84 durch Zuführen des Schreib-Setzsignals von der
EEPROM-Steuerschaltung 7 zum EEPROM 8 geschrieben (Schritt S9). Wenn die
Schreiboperation ausgeführt ist, wird das Schreib-Rücksetzsignal zum EEPROM 8
zugeführt (Schritt S11).
Wenn die Verarbeitungsoperation für die 4-Byte-Daten ausgeführt ist, wird die
Adresse der Anwenderdaten um 4 inkrementiert (Schritt S13), und danach werden
die bei den Schritten S5 und S8 definierten Verarbeitungsoperationen nochmals
wiederholt. Wenn die letzte Adresse erscheint (Schritt S12), dann ist diese Verar
beitungsoperation ausgeführt.
Die Schreibzeit der jeweiligen Daten, die in diesem Fall verarbeitet werden, ist in
einem Zeitdiagramm der Fig. 8 dargestellt. Anders ausgedrückt werden diese
Schreibdaten zuallererst deshalb, weil die 4-Byte-Daten vom Port 1 als Schreibda
ten (Daten "0" bis Daten "3") eingegeben werden, kontinuierlich zum Datenbus 4
ausgegeben. Wenn diese Schreibdaten zum im EEPROM 8 vorgesehenen An
wenderdatenregister 81 zu einer vorbestimmten Zeit übertragen werden, und wei
terhin die Erzeugung der ECC-Daten aus den Daten "0" bis zu den Daten "3" in der
CPU 2 ausgeführt ist, und dann diese ECC-Daten zum im EEPROM 8 vorgesehe
nen ECC-Datenregister 82 übertragen werden, wird ein Schreibimpuls erzeugt und
dann in den EEPROM 8 geschrieben.
Wenn in diesem EEPROM 8 gespeicherte Daten gelesen werden, können deshalb,
weil sowohl die Anwenderdaten als auch die ECC-Daten bei derselben Adresse
gelesen werden, sowohl der entsprechende Anwenderdatenteil als auch der ent
sprechende ECC-Datenteil von diesem EEPROM 8 ausgelesen werden. Als Er
gebnis kann die Fehlerkorrektur durch die Fehlerkorrekturschaltung 9 ausgeführt
werden.
Nachfolgend wird nun eine zweite Operation, die im EEPROM 8 ausgeführt wird,
unter Bezugnahme auf Fig. 9, Fig. 10, Fig. 11 und Fig. 12 beschrieben. Das bedeu
tet, daß diese zweite Operation ein Verarbeitungsverfahren zeigt, das in einem
derartigen Fall ausgeführt wird, daß deshalb, weil eine Schreiboperation des
EEPROM 8 mit einer hohen Geschwindigkeit durchgeführt wird, ECC-Daten nicht
innerhalb einer Breite eines Schreibimpulses erzeugt werden können, und auch
eine ECC-Adresse während einer Schreiboperation verschoben wird.
Es wird nun angenommen, daß sowohl eine erste Adresse von Anwenderdaten als
auch eine letzte Adresse dieser Anwenderdaten in einer externen Datei (nicht de
tailliert gezeigt) zum Speichern der Anwenderdaten darin im voraus bestimmt sind.
Nachdem 4-Byte-Daten gespeichert worden sind (Schritt P4), und zwar durch wie
derholtes Ausführen einer derartigen Verarbeitungsoperation, daß die Anwen
derdaten von der ersten Adresse der externen Datei in den Eingangs/Ausgangs-
Port 1 eingegeben werden (Schritt P1), und weiterhin die Anwenderdaten über den
Datenbus 4 zum in der EEPROM-Steuerschaltung 7 vorgesehenen Anwenderda
ten-Stapelregister 71 übertragen werden (Schritt P2), und dann über den Datenbus
4 in die interne Registergruppe 21 der CPU 2 gespeichert werden (Schritt P3),
werden diese Anwenderdaten vom in der EEPROM-Steuerschaltung 7 vorgesehe
nen Anwenderdaten-Stapelregister 71 zum innerhalb des EEPROM 8 vorgesehe
nen Anwenderdatenregister 81 übertragen (Schritt P6), wenn diese 4-Byte-Daten
der ersten Adresse entsprechen (Schritt P5). In dem Fall, daß das Schreib-
Setzsignal von der EEPROM-Steuerschaltung 7 zum EEPROM 8 ausgegeben wird
(Schritt P7), um die Anwenderdaten in diesen EEPROM 8 zu schreiben, und dar
auffolgend die Schreiboperation ausgeführt wird (Schritt P8), wird das Schreib-
Rücksetzsignal von der EEPROM-Steuerschaltung 7 zum EEPROM 8 ausgegeben
(Schritt P9). Als nächstes wird die Adresse um 4 inkrementiert (Schritt P10), und
dann wird die Verarbeitungsoperation wieder zum Schritt P1 zurückgebracht. Die
Verarbeitungsoperation wird, nachdem die 4-Byte-Daten von der externen Datei
eingegeben sind, wiederholt ausgeführt. In dem Fall, daß dann, wenn die Speiche
rungsoperation der oben erklärten 4-Byte-Daten beendet ist, die Adresse nicht mit
der ersten Adresse übereinstimmt (Schritt PS) und auch nicht mit der letzten
Adresse übereinstimmt (Schritt P11), führt die CPU 2 die unten angegebenen Ope
rationen aus. Diese CPU 2 erzeugt ECC-Daten aus den 4-Byte-Daten, die im vor
herigen Verarbeitungszyklus gespeichert worden sind (Schritt P12); überträgt die
ECC-Daten über den Datenbus 4 zum in der EEPROM-Steuerschaltung 7 vorge
sehenen ECC-Daten-Stapelregister 72 (Schritt P13); und überträgt auch die An
wenderdaten vom Anwenderdaten-Stapelregister 71 zum im EEPROM 8 vorgese
henen Anwenderdatenregister 81. Weiterhin überträgt die CPU 2 die ECC-Daten
vom ECC-Daten-Stapelregister 72 zum ECC-Datenregister 82 (Schritt P14); ver
schiebt die Adresse des ECC-Datenbereichs des EEPROM 8 um "-1" (Schritt P15);
gibt das Schreib-Setzsignal zum EEPROM 8 aus (Schritt P16); schreibt die An
wenderdaten vom Anwenderdatenregister 81 zum Anwenderdatenbereich 83 des
EEPROM 8; und schreibt auch die ECC-Daten vom ECC-Datenregister 82 in den
ECC-Datenbereich 84. Wenn die Schreiboperation ausgeführt ist (Schritt P17),
dann gibt diese CPU 2 das Schreib-Rücksetzsignal zum EEPROM 8 aus (Schritt
P18). Die Verarbeitungsoperation wird zum vorherigen Schritt P10 zurückgebracht,
bei welchem die CPU 2 die Adresse um +4 verschiebt (Schritt P10). Danach wird
die Verarbeitungsoperation wieder zum Schritt P1 zurückgebracht, bei welchem
durch Eingeben von 4-Byte-Daten von der externen Datei eine Folge der oben er
klärten Verarbeitungsoperationen wiederholt ausgeführt wird.
Wenn beim Schritt P11 die übrige Adresse die letzte Adresse ist, erzeugt die CPU
2 ECC-Daten aus den gespeicherten 4-Byte-Daten (Schritt P19); überträgt sie die
ECC-Daten über den Datenbus 4 zum in der EEPROM-Steuerschaltung 7 vorge
sehenen ECC-Daten-Stapelregister 72 (Schritt P20); und überträgt sie auch die
ECC-Daten zum ECC-Datenregister 82 (Schritt P21); verschiebt sie die Adresse
des ECC-Datenbereichs 84 des EEPROM 8 um "-1" (Schritt P22); gibt sie das
Schreib-Setzsignal zum EEPROM 8 aus (Schritt P23); und schreibt sie auch die
ECC-Daten. Wenn die Schreiboperation ausgeführt ist (Schritt P24), dann ist die
Verarbeitungsoperation ausgeführt.
Fig. 11 stellt verschiedene Schreibzeiten der jeweiligen Daten in einem derartigen
Fall dar, daß die ECC-Adresse während der Schreiboperation verschoben wird.
Anders ausgedrückt werden die Anwenderdaten vom Port zum im EEPROM 8 vor
gesehenen Anwenderdatenregister 81 in einer Einheit einer 4-Byte-Seite in der
Adressenfolge von der Seitenadresse 0, 1, 2, ---, n, ---, letzte Adresse sequentiell
übertragen. Die entsprechenden ECC-Daten, die basierend auf den Anwenderda
ten erzeugt werden, wobei sie eine Verzögerung von einem Zyklus haben, werden
aufeinanderfolgend um 1 Adresse verschoben, und dann werden die um eine
Adresse verschobenen ECC-Daten zum ECC-Datenregister 82 des EEPROM 8
übertragen. In Antwort auf den Schreibimpuls werden diese um eine Adresse ver
schobenen ECC-Daten in den Anwenderdatenbereich 83 des EEPROM 8 ge
schrieben und auch in seinen ECC-Datenbereich 84.
In dem Fall, daß die im EEPROM 8 gespeicherten Daten ausgelesen werden, um
die Fehlerkorrektur-Verarbeitungsoperation auszuführen, werden sowohl die An
wenderdaten als auch die ECC-Daten aus derselben Adresse dieses EEPROM 8
ausgelesen, so daß sowohl der dieser entsprechende Anwenderdatenteil als auch
der dieser entsprechende ECC-Datenteil gleichzeitig ausgelesen werden können.
Wie es in Fig. 12 dargestellt ist, ist die in der EEPROM-Steuerschaltung 7 verwen
dete EEPROM-Adressen-Erzeugungsschaltung 18 in einem solchen Fall, daß eine
ECC-Adresse während einer Schreiboperation verschoben wird, durch Verwenden
eines Adressenbusses 181 und einer Dekrementierschaltung 182 aufgebaut.
Der Adressenbus 181 bildet einen Teil des Adressenbusses 11 und überträgt ein
Adressensignal. Die Dekrementierschaltung 182 dekrementiert eine Adresse des
Adressenbusses 181 um 1, um die dekrementierte Adresse auszugeben.
Da sowohl 32-Bit-Anwenderdaten als auch 6-Bit-ECC-Daten gleichzeitig in den
EEPROM 8 geschrieben werden, werden Bits 2 bis 15 des Adressenbusses 181 an
Adressen 0 bis 13 dieses EEPROM 8 als Schreibadressen für den Anwenderda
tenbereich 83 des EEPROM 8 angelegt, wohingegen die Bits 2 bis 15 des Adres
senbusses 181 mittels der Dekrementierschaltung 182 um 1 dekrementiert werden,
und die dekrementierten Bits dann an die Adresse 0 bis 13 des EEPROM 8 als
Schreibadressen für den ECC-Datenbereich 84 dieses EEPROM 8 angelegt wer
den. Der Grund, warum eine solche Umwandlung ausgeführt wird, ist wie folgt ge
geben: das bedeutet, daß das am wenigsten signifikante Bit (LSB) von 2 Bits nicht
als die Adresse entsprechend den 32-Bit-Eingangs/Ausgangs-Daten des EEPROM
8 erforderlich sind, wohingegen das Adressensignal in der Einheit von 1 Byte
(8 Bits) vorgesehen ist.
Nachfolgend wird nun eine dritte Operation, die im EEPROM 8 ausgeführt wird,
unter Bezugnahme auf Fig. 13, Fig. 14, Fig. 15 und Fig. 16 beschrieben. Das be
deutet, daß diese dritte Operation ein Verarbeitungsverfahren zeigt, das in einem
derartigen Fall ausgeführt wird, daß deshalb, weil eine Schreiboperation des
EEPROM 8 mit einer hohen Geschwindigkeit durchgeführt wird, ECC-Daten nicht
innerhalb einer Breite eines Schreibimpulses erzeugt werden können, und auch
eine ECC-Adresse während einer Leseoperation verschoben wird.
Es wird nun angenommen, daß sowohl eine erste Adresse von Anwenderdaten als
auch eine letzte Adresse dieser Anwenderdaten in einer externen Datei (nicht de
tailliert gezeigt) zum Speichern der Anwenderdaten im voraus darin bestimmt sind.
Nachdem 4-Byte-Daten gespeichert worden sind (Schritt R4), und zwar durch wie
derholtes Ausführen einer solchen Verarbeitungsoperation, daß die Anwenderda
ten ab der ersten Adresse der externen Datei in den Eingangs/Ausgangs-Port 1
eingegeben werden (Schritt R1), und die Anwenderdaten über den Datenbus 4
zum in der EEPROM-Steuerschaltung 7 verwendeten Anwenderdaten-
Stapelregister 71 übertragen werden, und weiterhin die eingegebenen Daten über
den Datenbus 4 in die interne Registergruppe 21 der CPU 2 gespeichert werden
(Schritt R4), werden diese Anwenderdaten vom Anwenderdaten-Stapelregister 71
zum innerhalb des EEPROM 8 vorgesehenen Anwenderdatenregister 81 übertra
gen (Schritt R6), wenn diese 4-Bit-Daten der ersten Adresse entsprechen (Schritt
R5). In dem Fall, daß das Schreib-Setzsignal von der EEPROM-Steuerschaltung 7
zum EEPROM 8 ausgegeben wird (Schritt R7), um die Anwenderdaten in diesen
EEPROM 8 zu schreiben, und darauffolgend die Schreiboperation ausgeführt ist
(Schritt R8), wird das Schreib-Rücksetzsignal von der EEPROM-Steuerschaltung 7
zum EEPROM 8 ausgegeben (Schritt R9). Als nächstes wird die Adresse um 4 in
krementiert (Schritt R10) und dann wird die Verarbeitungsoperation wieder zum
Schritt R1 zurückgebracht. Die Verarbeitungsoperation wird, nachdem die 4-Byte-
Daten von der externen Datei eingegeben sind, wiederholt ausgeführt.
In dem Fall, daß dann, wenn die Speicherungsoperation der oben erklärten 4-Byte-
Daten beendet ist, die Adresse nicht mit der ersten Adresse übereinstimmt
(Schritt R5) und auch nicht mit der letzten Adresse übereinstimmt (Schritt R11),
führt die CPU 2 die unten angegebenen Operationen aus. Diese CPU 2 erzeugt
ECC-Daten aus den gespeicherten 4-Byte-Daten (Schritt R12); überträgt die ECC-
Daten über den Datenbus 4 zum in der EEPROM-Steuerschaltung 7 vorgesehenen
ECC-Daten-Stapelregister 72 (Schritt R13); und überträgt auch die Anwenderdaten
vom Anwenderdaten-Stapelregister 71 zum im EEPROM 8 vorgesehenen Anwen
derdatenregister 81. Weiterhin überträgt die CPU 2 die ECC-Daten vom ECC-
Daten-Stapelregister 72 zum ECC-Datenregister 82 (Schritt R14); gibt das Schreib-
Setzsignal zum EEPROM 8 aus (Schritt R15); schreibt die Anwenderdaten vom
Anwender-Datenregister 81 zum Anwenderdatenbereich 83 des EEPROM 8; und
schreibt auch die ECC-Daten vom ECC-Datenregister 82 in den ECC-Datenbereich
84. Wenn die Schreiboperation ausgeführt ist (Schritt R16), dann gibt diese CPU 2
das Schreib-Rücksetzsignal zum EEPROM 8 aus (Schritt R17). Die Verarbeitungs
operation wird zum vorherigen Schritt R10 zurückgebracht, bei welchem die CPU 2
die Adresse um +4 verschiebt (Schritt R10). Darauffolgend wird die Verarbeitungs
operation wieder zum Schritt R1 zurückgebracht, bei welchem durch Eingeben von
4-Byte-Daten von der externen Datei eine Folge der oben erklärten Verarbeitungs
operationen wiederholt ausgeführt wird.
Wenn beim Schritt R11 die übrige Adresse die letzte Adresse ist, erzeugt die CPU
2 ECC-Daten aus den gespeicherten 4-Byte-Daten (Schritt R18); überträgt sie die
ECC-Daten über den Datenbus 4 zum in der EEPROM-Steuerschaltung 7 vorge
sehenen ECC-Daten-Stapelregister 72 (Schritt R19); und überträgt sie auch die
ECC-Daten vom ECC-Daten-Stapelregister 72 zum ECC-Datenregister 82 inner
halb des EEPROM 8 (Schritt R20); und gibt sie auch das Schreib-Setzsignal zum
EEPROM 8 aus (Schritt R21), um die Schreiboperation dieser ECC-Daten auszu
führen. Wenn diese ECC-Daten-Schreiboperation ausgeführt ist (Schritt R22), ist
die Verarbeitungsoperation ausgeführt.
Fig. 15 stellt verschiedene Schreibzeiten der jeweiligen Daten in einem derartigen
Fall dar, daß die ECC-Adresse während der Leseoperation verschoben wird. An
ders ausgedrückt werden die Anwenderdaten vom Port 1 zum im EEPROM 8 vor
gesehenen Anwenderdatenregister 81 in einer Einheit einer 4-Byte-Seite in der
Adressenfolge von der Seitenadresse 0, 1, 2, ---, n, ---, letzte Adresse sequentiell
übertragen. Die entsprechenden ECC-Daten, die basierend auf den Anwenderda
ten erzeugt werden, wobei sie eine Verzögerung von einem Zyklus haben, werden
aufeinanderfolgend zum ECC-Datenregister 82 des EEPROM 8 übertragen. In
Antwort auf den Schreibimpuls werden diese um eine Adresse verschobenen ECC-
Daten in den Anwenderdatenbereich 83 des EEPROM 8 geschrieben und auch in
seinen ECC-Datenbereich 84, und zwar bei denselben Adressen davon. Als Folge
werden in diesem Fall die ECC-Daten entsprechend den Anwenderdaten bei der
Seitenadresse n in den ECC-Datenbereich 84 bei seiner Adresse (n+1) geschrie
ben.
In dem Fall, daß die im EEPROM 8 gespeicherten Daten ausgelesen werden, um
die Fehlerkorrektur-Verarbeitungsoperation auszuführen, werden sowohl die An
wenderdaten bei der Adresse "n" des Anwenderdatenbereichs 83 als auch die
ECC-Daten bei der Adresse (n+1) des Anwenderdatenbereichs 84, die im
EEPROM 8 vorgesehen sind, ausgelesen. Als Ergebnis können sowohl der ent
sprechende Datenteil als auch der entsprechende ECC-Datenteil gleichzeitig aus
gelesen werden.
Wie es in Fig. 16 dargestellt ist, ist die EEPROM-Adressen-Erzeugungsschaltung
18A, die in der EEPROM-Steuerschaltung 7 in einem derartigen Fall verwendet
wird, daß eine ECC-Adresse während einer Leseoperation verschoben wird, durch
Verwenden eines Adressenbusses 183 und einer Dekrementierschaltung 184 auf
gebaut.
Der Adressenbus 183 bildet einen Teil des Adressenbusses 11 und überträgt ein
Adressensignal. Die Dekrementierschaltung 184 dekrementiert eine Adresse des
Adressenbusses 183 um 1, um die dekrementierte Adresse auszugeben.
Da sowohl 32-Bit-Anwenderdaten als auch 6-Bit-ECC-Daten gleichzeitig aus dem
EEPROM 8 ausgelesen werden, werden Bits 2 bis 15 des Adressenbusses 183 an
Adressen 0 bis 13 dieses EEPROM 8 als Leseadressen für den Anwenderdatenbe
reich 83 des EEPROM 8 angelegt wohingegen die Bits 2 bis 15 des Adressenbus
ses 183 mittels der Dekrementierschaltung 184 um 1 dekrementiert werden, und
die dekrementierten Bits dann an die Adresse 0 bis 13 des EEPROM 8 als Lesea
dressen für den ECC-Datenbereich 84 des EEPROM 8 angelegt werden. Der
Grund, warum eine derartige Umwandlung ausgeführt wird, ist gegeben wie folgt:
das bedeutet, daß das am wenigsten signifikante Bit (LSB) von 2 Bits nicht als
Adresse entsprechend den 32-Bit-Eingangs/Ausgangs-Daten des EEPROM 8 er
forderlich ist, wohingegen das Adressensignal in der Einheit von 1 Byte (8 Bits)
vorgesehen ist.
Eine im EEPROM 8 durchgeführte vierte Operation wird unter Bezugnahme auf
Fig. 17, Fig. 18 und Fig. 19 erklärt. Das bedeutet, daß diese vierte Operation ein
Verarbeitungsverfahren anzeigt, das in einem derartigen Fall ausgeführt wird, daß
deshalb, weil eine Schreiboperation des EEPROM 8 mit einer hohen Geschwindig
keit ausgeführt wird, wenn ECC-Daten nicht innerhalb einer Breite eines Schrei
bimpulses erzeugt werden können, eine Schreibadressen-Inkrementierfunktion auf
der Seite des ECC-Datenbereichs dieses EEPROM 8 vorgesehen ist. Diese
Schreibadressen-Inkrementierfunktion inkrementiert eine Schreibadresse durch
Ausführen einer Verarbeitungsoperation der CPU 2 basierend auf einem in dem
Firmware-ROM 5 gespeicherten Programm.
Eine erste Adresse von Anwenderdaten, die in einer externen Datei (nicht gezeigt)
gespeichert sind, und auch eine letzte Adresse dieser Anwenderdaten werden im
voraus bestimmt. Nachdem 4-Byte-Daten gespeichert worden sind (Schritt Q4),
und zwar durch wiederholtes Durchführen einer solchen Verarbeitungsoperation,
daß die Anwenderdaten ab der ersten Adresse zum Eingangs/Ausgangs-Port 1
eingegeben werden (Schritt Q1), die Anwenderdaten über den Datenbus 4 zum in
der EEPROM-Steuerschaltung 7 vorgesehenen Anwenderdaten-Stapelregister 71
übertragen werden (Schritt Q2), und weiterhin die vom Eingangs/Ausgangs-Port 1
übertragenen Anwenderdaten durch den Datenbus 4 in die interne Registergruppe
21 der CPU 2 gespeichert werden (Schritt Q3), werden die 4-Byte-Daten vom An
wenderdaten-Stapelregister 71 zum in diesem EEPROM 8 vorgesehenen Anwen
derdatenregister 81 übertragen (Schritt Q5).
Andererseits werden dann, wenn die ersten 4-Byte-Daten beim Schritt Q5 zum im
EEPROM 8 vorgesehenen Anwenderdatenregister 81 übertragen werden, die 4-
Byte-Daten in einem Speicherungsbereich des RAM 6 bei einer Adresse entspre
chend dem Anwenderdaten-Stapelregister 71 über den Datenbus 4 von der inter
nen Registergruppe 21 gespeichert (Schritt Q6). Dann werden die 4-Byte-Daten
über den Datenbus 4 vom Speicherungsbereich des RAM 6 ausgelesen, der durch
eine Anwenderdaten-Stapeladresse bestimmt ist (Schritt Q7). Demgemäß führt die
CPU 2 wiederholt eine derartige Verarbeitungsoperation aus, daß diese CPU 2
ECC-Daten aus den 4-Byte-Daten erzeugt (Schritt Q8); sie die ECC-Daten über
den Datenbus 4 zum in der EEPROM-Steuerschaltung 7 vorgesehen ECC-Daten-
Stapelregister 72 bei der entsprechenden Adresse überträgt (Schritt Q9); und sie
weiterhin diese ECC-Daten zum im EEPROM 8 vorgesehenen ECC-Datenregister
82 überträgt, so daß die Stapeladresse dekrementiert wird (Schritt Q11).
Dann führt die CPU 2 wiederholt die folgende Verarbeitungsoperation durch, wäh
rend sie die Adresse um 4 inkrementiert (Schritt Q17). Das bedeutet, daß diese
CPU bei dieser Verarbeitungsoperation sowohl eine Adresse des Anwenderdaten
bereichs 82 des EEPROM 8 als auch eine Adresse des ECC-Datenbereichs 84
von der EEPROM-Steuerschaltung 7 ausgibt (Schritt Q12); und sie auch das
Schreib-Setzsignal zum EEPROM 8 ausgibt (Schritt Q13), um eine Schreiboperati
on auszuführen. Wenn die Schreiboperation ausgeführt ist (Schritt Q14), gibt diese
CPU 2 das Schreib-Rücksetzsignal (Schritt Q15) aus, um die Schreiboperation zu
beenden.
Wenn die Anwenderdaten die letzte Adresse werden (Schritt Q16), überträgt die
CPU 2 die ECC-Daten vom ECC-Daten-Stapelregister 72 zum im EEPROM 8 vor
gesehenen ECC-Datenregister 82. Wenn die ECC-Daten-Übertragungsoperation
beendet ist (Schritt Q18), gibt die CPU 2 das Schreib-Setzsignal aus (Schritt Q19),
um die Schreiboperation in bezug auf den ECC-Datenbereich 84 des EEPROM 8
auszuführen. Wenn die Schreiboperation beendet ist (Schritt Q20), gibt die CPU 2
das Schreib-Rücksetzsignal aus (Schritt Q21). Die oben erklärten Verarbeitungs
operationen werden ausgeführt, bis die Anwenderdaten die letzte Adresse des
ECC-Datenbereichs 84 werden (Schritt Q22), und danach ist die Verarbeitungs
operation ausgeführt.
Fig. 19 stellt ein Schreib-Zeitdiagramm für die verschiedenen Daten dar, wenn die
vierte Operation im EEPROM 8 ausgeführt wird. Wie es in diesem Schreib-
Zeitdiagramm gezeigt ist, werden Anwenderdaten vom Eingangs/Ausgangs-Port 1
zum im EEPROM 8 vorgesehenen Anwenderdatenregister 81 in einer Einheit einer
4-Byte-Seite in dieser Reihenfolge von Seitenadressen 0, 1, 2, . . ., n, . . . eine letzte
Seitenadresse übertragen, und ebenso werden ECC-Daten, die basierend auf die
sen übertragenen Anwenderdaten erzeugt werden, sequentiell zum in diesem
EEPROM 8 vorgesehenen ECC-Datenregister 82 übertragen. Während die An
wenderdaten in Antwort auf den Schreibimpuls direkt in den Anwenderdatenbe
reich 83 dieses EEPROM 8 geschrieben werden, werden die ECC-Daten auf eine
andere Weise geschrieben. Das bedeutet, daß die zuerst erzeugten ECC-Daten für
die ECC-Adresse "0" (nämlich Schreiboperation (1) und (2)) nicht geschrieben
werden, weil diese ECC-Daten Vorgabewerte sind, die durch die Verzögerungen
bei der ECC-Daten-Erzeugung verursacht werden. Die ECC-Daten, die den zuerst
erzeugten ECC-Daten nachfolgen, werden in Antwort auf die Schreibimpulse in
den ECC-Datenbereich 84 des EEPROM 8 definiert bei vorausgewählten Adressen
geschrieben.
Bei dieser vierten Operation gibt diese CPU 2 dann, wenn die Erzeugung der ECC-
Daten durch die CPU 2 nicht ausgeführt werden kann, bis die Adresse, die zum
Schreiben der nächsten ECC-Daten verwendet wird, inkrementiert ist, den Vorga
bewert aus. In diesem Fall führt die EEPROM-Steuerschaltung 7 kein Schreiben
der ECC-Daten in den im EEPROM 8 vorgesehenen ECC-Datenbereich 84 aus.
Als Vorgabewert werden beispielsweise alle Ziffern von "1" verwendet, bis die er
sten ECC-Daten erzeugt werden, und darauffolgend werden die vorangehenden
ECC-Daten direkt als der Vorgabewert ausgegeben.
Wenn die Daten vom EEPROM 8 ausgelesen werden, um die Fehlerkorrektur-
Verarbeitungsoperation auszuführen, werden sowohl die Anwenderdaten als auch
die ECC-Daten bei derselben Adresse dieses EEPROM 8 ausgelesen, so daß der
entsprechende Anwenderdatenteil und der entsprechende ECC-Datenteil ausgele
sen werden können.
Wie es zuvor beschrieben ist, wird gemäß dem Ein-Chip-Mikrocomputer der bevor
zugten Ausführungsbeispiele dann, wenn die ECC-Daten erzeugt werden, die
ECC-Daten-Erzeugungs-Verarbeitungsoperation nicht durch Verwendung der ex
ternen Software durchgeführt, sondern sie wird durch Ausführen der Software aus
geführt, die in diesem Ein-Chip-Mikrocomputer intern vorgesehen ist. Als Ergebnis
ist es nicht mehr erforderlich, daß die ECC-Daten von der externen Datei in den
Ein-Chip-Mikrocomputer geschrieben werden, und eine Gesamtmenge von von
außerhalb geschriebenen Daten wird reduziert. Folglich können die Fehler, die
auftreten, während die Schreibdaten übertragen werden, reduziert werden, und die
Zuverlässigkeit dieser Schreibdaten kann erhöht werden.
Weiterhin kann deshalb, weil die Gesamtmenge von Daten, die von außen in den
EEPROM geschrieben werden, reduziert ist, die Datenschreibzeit verkürzt werden,
und die Produktivität des Ein-Chip-Mikrocomputers kann verbessert werden.
Ebenso werden die in der externen Vorrichtung tatsächlich angebrachten Speicher,
die dazu verwendet werden, die Daten außer den ECC-Daten in den EEPROM zu
schreiben, verglichen mit denjenigen des herkömmlichen Ein-Chip-Mikrocomputers
reduziert. Als Folge können die Gesamtkosten für diese externe Vorrichtung redu
ziert werden.
Während die verschiedenen Ausführungsbeispiele der vorliegenden Erfindung un
ter Bezugnahme auf die Zeichnungen beschrieben worden sind, ist die vorliegende
Erfindung nicht auf diese Ausführungsbeispiele beschränkt, sondern kann modifi
ziert, geändert und ergänzt werden, ohne vom technischen Schutzumfang und
Sinn der Erfindung abzuweichen. Beispielsweise ist die vorliegende erfinderische
Idee nicht auf einen Ein-Chip-Mikrocomputer beschränkt, sondern kann auf andere
Computer mit einer Verwendung von EEPROMs angewendet werden, die ein Pro
gramm extern speichern können.
Wie es zuvor detailliert beschrieben ist, können gemäß der vorliegenden Erfindung
bei einem derartigen Ein-Chip-Mikrocomputer, bei welchem die Fehlerkorrektur,
während das Computerprogramm, das aus den Computerdaten, denen die ECC-
Daten hinzugefügt sind, aufgebaut ist, im EEPROM gespeichert ist, dann ausge
führt wird, wenn das Computerprogramm daraus gelesen wird, die ECC-Daten in
nerhalb des Ein-Chip-Mikrocomputers erzeugt werden. Als Folge kann die dem
Anwender auferlegte Arbeitsbelastung verglichen mit der Arbeitsbelastung des
Anwenders in einem derartigen Fall, daß die ECC-Daten außerhalb des Ein-Chip-
Mikrocomputers erzeugt werden, stark reduziert werden.
Weiterhin können deshalb, weil ein derartiger externer Speicher zum temporären
Speichern der erzeugten ECC-Daten dort hinein nicht mehr erforderlich ist, um die
ECC-Daten zu erzeugen, die Kosten für das gesamte System gesenkt werden.
Zusätzlich kann deshalb, weil sowohl die Anwenderdaten als auch die ECC-Daten
gleichzeitig in den EEPROM geschrieben werden, die Datenschreibzeit in bezug
auf den EEPROM verglichen mit der Datenschreibzeit, die erforderlich ist, wenn die
ECC-Daten vom externen Speicher in diesen EEPROM geschrieben werden, re
duziert werden.
Unterschiedlich vom herkömmlichen Ein-Chip-Mikrocomputer, bei welchem die
ECC-Daten durch die ECC-Daten-Erzeugungsschaltung erzeugt werden, die durch
die Logikschaltungen aufgebaut ist, ist bei dem Ein-Chip-Mikrocomputer der vorlie
genden Erfindung nur der Firmware-ROM zum Erzeugen der ECC-Daten neu hin
zugefügt. Als Folge muß nicht die gesamte Chipgröße dieses Ein-Chip-
Mikrocomputers erhöht werden, ohne daß das Schaltungsausmaß stark erhöht
wird. Ebenso wird gemäß der vorliegenden Erfindung die Verarbeitungsoperation
zum Erzeugen der ECC-Daten nur ausgeführt, während das Computerprogramm in
den EEPROM gespeichert wird, wohingegen der Firmware-ROM, der zum Ausfüh
ren der ECC-Daten-Erzeugungs-Verarbeitungsoperation verwendet wird, nicht be
trieben wird, während das normale Computerprogramm ausgeführt wird. Darüber
hinaus werden dann, wenn das Computerprogramm ausgeführt wird, die Fehlerer
fassungs/-korrektur-Verarbeitungsoperationen durch Verwenden der Fehlerkorrek
turschaltung durchgeführt, die durch die Logikschaltungen aufgebaut ist. Als Er
gebnis wird die normale Programmverarbeitungsgeschwindigkeit nicht verringert.
Ebenso wird normalerweise dann, wenn Daten in einen EEPROM geschrieben
werden, eine Datenschreibzeit davon notwendigerweise mehrere hundert bis meh
rere tausend, verglichen mit derjenigen, die in einem RAM erforderlich ist. Gegen
sätzlich dazu werden gemäß der vorliegenden Erfindung die von der externen Vor
richtung empfangenen Anwenderdaten miteinander in einer Einheit von mehreren
Bytes kombiniert, und dann werden die kombinierten Anwenderdaten in den
EEPROM geschrieben. Ebenso werden die in einer Einheit von mehreren Bytes
kombinierten Anwenderdaten weiterhin mit den ECC-Daten kombiniert, und dann
werden das Ergebnis und die Daten in den EEPROM geschrieben. Als Folge kön
nen die Anwenderdaten mit hohen Geschwindigkeiten empfangen werden, und
weiterhin können auf parallele Weise die ECC-Daten berechnet werden, während
die Schreibzeit ausgenutzt wird.
Es ist somit klar, daß die vorliegende Erfindung nicht auf die obigen Ausführungs
beispiele beschränkt ist, sondern ohne vom Schutzumfang und vom Sinn der Erfin
dung abzuweichen, geändert und modifiziert werden kann.
Schließlich beansprucht die vorliegende Anmeldung die Priorität der japanischen
Patentanmeldung mit der Nr. Heil 0-097287, die am 9. April 1998 eingereicht wur
de, und die hierin durch Bezugnahme enthalten ist.
Claims (12)
1. Mikrocomputer, der dadurch gekennzeichnet ist, daß er folgendes aufweist:
einen elektrisch löschbaren Speicher (8) zum temporären Speichern von von außen zugeführten Anwenderdaten und von ECC-(Fehlerkorrekturcode)- Daten entsprechend den Anwenderdaten dort hinein;
einen Programmspeicherungsspeicher (5) zum vorherigen Speichern ei nes Programms dort hinein; und
eine CPU (Zentralverarbeitungseinheit) (2) zum Lesen des Programms aus dem Programmspeicherungsspeicher (5), um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum se quentiellen Korrigieren von Fehlern, die in den von außen zugeführten An wenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten entsprechend den von außen zugeführten Anwenderdaten.
einen elektrisch löschbaren Speicher (8) zum temporären Speichern von von außen zugeführten Anwenderdaten und von ECC-(Fehlerkorrekturcode)- Daten entsprechend den Anwenderdaten dort hinein;
einen Programmspeicherungsspeicher (5) zum vorherigen Speichern ei nes Programms dort hinein; und
eine CPU (Zentralverarbeitungseinheit) (2) zum Lesen des Programms aus dem Programmspeicherungsspeicher (5), um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum se quentiellen Korrigieren von Fehlern, die in den von außen zugeführten An wenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten entsprechend den von außen zugeführten Anwenderdaten.
2. Mikrocomputer nach Anspruch 1, dadurch gekennzeichnet, daß:
wenn die von außen zugeführten Anwenderdaten einen 1-Bit-Fehler ent halten, die CPU (2) den 1-Bit-Fehler basierend auf den aus dem elektrisch löschbaren Speicher (8) gelesenen erzeugten ECC-Daten korrigiert, wohin gegen dann, wenn die von außen zugeführten Anwenderdaten mehr als 2-Bit- Fehler enthalten, die CPU (2) einen anormalen Zustand anzeigt.
wenn die von außen zugeführten Anwenderdaten einen 1-Bit-Fehler ent halten, die CPU (2) den 1-Bit-Fehler basierend auf den aus dem elektrisch löschbaren Speicher (8) gelesenen erzeugten ECC-Daten korrigiert, wohin gegen dann, wenn die von außen zugeführten Anwenderdaten mehr als 2-Bit- Fehler enthalten, die CPU (2) einen anormalen Zustand anzeigt.
3. Mikrocomputer nach Anspruch 1, dadurch gekennzeichnet, daß:
der elektrisch löschbare Speicher (8) ein Flash-Speicher ist.
der elektrisch löschbare Speicher (8) ein Flash-Speicher ist.
4. Ein-Chip-Mikrocomputer, der dadurch gekennzeichnet, daß er folgendes auf
weist:
einen EEPROM (einen elektrisch löschbaren Nurlesespeicher) (8) zum temporären Speichern von von außen zugeführten Anwenderdaten in seinen Anwenderdaten-Speicherungsbereich (83) und auch zum temporären Spei chern von ECC-(Fehlerkorrekturcode)-Daten entsprechend den Anwenderda ten in seinen ECC-Daten-Speicherungsbereich (84);
einen Nurlesespeicher (5) zum vorherigen Speichern eines Programms dort hinein; und
eine CPU (Zentralverarbeitungseinheit) (2) zum Lesen des Programms vom Nurlesespeicher (5), um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von Fehlern, die in den von außen zugeführten Anwenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten.
einen EEPROM (einen elektrisch löschbaren Nurlesespeicher) (8) zum temporären Speichern von von außen zugeführten Anwenderdaten in seinen Anwenderdaten-Speicherungsbereich (83) und auch zum temporären Spei chern von ECC-(Fehlerkorrekturcode)-Daten entsprechend den Anwenderda ten in seinen ECC-Daten-Speicherungsbereich (84);
einen Nurlesespeicher (5) zum vorherigen Speichern eines Programms dort hinein; und
eine CPU (Zentralverarbeitungseinheit) (2) zum Lesen des Programms vom Nurlesespeicher (5), um die ECC-Daten basierend auf den von außen zugeführten Anwenderdaten zu erzeugen, und zum sequentiellen Korrigieren von Fehlern, die in den von außen zugeführten Anwenderdaten enthalten sind, unter Verwendung der erzeugten ECC-Daten.
5. Ein-Chip-Mikrocomputer nach Anspruch 4, dadurch gekennzeichnet, daß:
während eine vorausgewählte Menge der Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt; sowohl die Anwenderdaten als auch die ECC-Daten entsprechend den An wenderdaten jeweils in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und auch seinen ECC-Daten-Speicherungsbereich (84) bei denselben Adressen des EEPROM (8) schreibt; und sowohl die Anwenderda ten als auch die ECC-Daten aus den Anwenderdaten/ECC-Daten- Speicherungsbereichen (83/84) bei denselben Adressen liest, um die Fehler korrektur sequentiell durchzuführen.
während eine vorausgewählte Menge der Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt; sowohl die Anwenderdaten als auch die ECC-Daten entsprechend den An wenderdaten jeweils in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und auch seinen ECC-Daten-Speicherungsbereich (84) bei denselben Adressen des EEPROM (8) schreibt; und sowohl die Anwenderda ten als auch die ECC-Daten aus den Anwenderdaten/ECC-Daten- Speicherungsbereichen (83/84) bei denselben Adressen liest, um die Fehler korrektur sequentiell durchzuführen.
6. Ein-Chip-Mikrocomputer nach Anspruch 4, dadurch gekennzeichnet, daß:
während eine vorausgewählte Menge der Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt, bis ein Verarbeitungszyklus beendet ist; die Anwenderdaten und die ECC-Daten, die erzeugt sind, nachdem ein Verarbeitungszyklus beendet worden ist, in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten-Speicherungsbereich (84) mit einer gegenüber der Adresse des Anwenderdaten-Speicherungsbereichs (83) um 1 dekrementierten Adresse schreibt; und auch sowohl die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM (8) gespeichert sind, liest, um die Fehlerkorrektur sequentiell durchzuführen.
während eine vorausgewählte Menge der Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt, bis ein Verarbeitungszyklus beendet ist; die Anwenderdaten und die ECC-Daten, die erzeugt sind, nachdem ein Verarbeitungszyklus beendet worden ist, in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten-Speicherungsbereich (84) mit einer gegenüber der Adresse des Anwenderdaten-Speicherungsbereichs (83) um 1 dekrementierten Adresse schreibt; und auch sowohl die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM (8) gespeichert sind, liest, um die Fehlerkorrektur sequentiell durchzuführen.
7. Ein-Chip-Mikrocomputer nach Anspruch 4, dadurch gekennzeichnet, daß:
während eine vorausgewählte Menge der Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt, bis ein Verarbeitungszyklus beendet ist; die Anwenderdaten und ECC-Daten, die erzeugt sind, nachdem ein Verarbeitungszyklus beendet worden ist, jeweils in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten-Speicherungsbereich (84) bei denselben Adressen schreibt; und
auch die im Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) ge speicherten Anwenderdaten und die in seinem ECC-Daten-Speiche rungsbereich (84) gespeicherten ECC-Daten mit einer gegenüber der Adres se des Anwenderdaten-Speicherungsbereichs (83) um 1 inkrementierten Adresse liest, um die Fehlerkorrektur sequentiell durchzuführen.
während eine vorausgewählte Menge der Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt, bis ein Verarbeitungszyklus beendet ist; die Anwenderdaten und ECC-Daten, die erzeugt sind, nachdem ein Verarbeitungszyklus beendet worden ist, jeweils in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten-Speicherungsbereich (84) bei denselben Adressen schreibt; und
auch die im Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) ge speicherten Anwenderdaten und die in seinem ECC-Daten-Speiche rungsbereich (84) gespeicherten ECC-Daten mit einer gegenüber der Adres se des Anwenderdaten-Speicherungsbereichs (83) um 1 inkrementierten Adresse liest, um die Fehlerkorrektur sequentiell durchzuführen.
8. Ein-Chip-Mikrocomputer nach Anspruch 4, dadurch gekennzeichnet, daß:
während eine vorausgewählte Menge von Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt ungültige Daten in dem Fall ausgibt, daß die Erzeugung der ECC-Daten nicht ausgeführt ist, bis nächste Anwenderdaten eingegeben werden; sowohl die Anwenderdaten als auch ihnen entsprechende gültige ECC-Daten jeweils in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten-Speicherungsbereich (84) bei denselben Adressen schreibt; und
auch die Anwenderdaten und die ECC-Daten, die bei denselben Adressen der Anwenderdaten/ECC-Daten-Speicherungsbereiche (83/84) des EEPROM (8) gespeichert sind, liest, um die Fehlerkorrektur auszuführen.
während eine vorausgewählte Menge von Anwenderdaten von einer ex ternen Datenquelle sequentiell eingegeben wird, die CPU (2) die ECC-Daten aus der vorausgewählten Menge von Anwenderdaten sequentiell erzeugt ungültige Daten in dem Fall ausgibt, daß die Erzeugung der ECC-Daten nicht ausgeführt ist, bis nächste Anwenderdaten eingegeben werden; sowohl die Anwenderdaten als auch ihnen entsprechende gültige ECC-Daten jeweils in den Anwenderdaten-Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten-Speicherungsbereich (84) bei denselben Adressen schreibt; und
auch die Anwenderdaten und die ECC-Daten, die bei denselben Adressen der Anwenderdaten/ECC-Daten-Speicherungsbereiche (83/84) des EEPROM (8) gespeichert sind, liest, um die Fehlerkorrektur auszuführen.
9. Ein-Chip-Mikrocomputer, der dadurch gekennzeichnet ist, daß er folgendes
aufweist:
einen EEPROM (einen elektrisch löschbaren programmierbaren Nurlese speicher) (8) zum temporären Speichern dort hinein von sowohl Anwenderda ten als auch ECC-(Fehlerkorrekturcode-)Daten entsprechend den Anwen derdaten jeweils in einen Anwenderdaten-Speicherungsbereich (83) und ei nen ECC-Daten-Speicherungsbereich (84);
eine Speicherungseinrichtung (5) zum vorherigen Speichern eines Pro gramms dort hinein, das zum Erzeugen von ECC-Daten basierend auf An wenderdaten verwendet wird;
eine Schreibsteuerungseinrichtung (7) zum Steuern eines Schreibens von sowohl den Anwenderdaten als auch den ECC-Daten in den EEPROM (8); und
eine CPU (Zentralverarbeitungseinheit) (2) zum Erzeugen von ECC- Daten aus den im EEPROM (8) gespeicherten Anwenderdaten gemäß dem Programm und zum Speichern der erzeugten ECC-Daten und der ursprüngli chen Anwenderdaten in den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) und seinen Anwenderdaten-Speicherungsbereich (83) unter Steuerung der Schreibsteuerungseinrichtung (7); und weiterhin zum Lesen der im Anwenderdaten-Speicherungsbereich (83) gespeicherten Anwen derdaten und der im ECC-Daten-Speicherungsbereich (84) gespeicherten ECC-Daten, um einen in den Anwenderdaten enthaltenen Fehler basierend auf sowohl den gelesenen Anwenderdaten als auch den gelesenen ECC- Daten zu korrigieren.
einen EEPROM (einen elektrisch löschbaren programmierbaren Nurlese speicher) (8) zum temporären Speichern dort hinein von sowohl Anwenderda ten als auch ECC-(Fehlerkorrekturcode-)Daten entsprechend den Anwen derdaten jeweils in einen Anwenderdaten-Speicherungsbereich (83) und ei nen ECC-Daten-Speicherungsbereich (84);
eine Speicherungseinrichtung (5) zum vorherigen Speichern eines Pro gramms dort hinein, das zum Erzeugen von ECC-Daten basierend auf An wenderdaten verwendet wird;
eine Schreibsteuerungseinrichtung (7) zum Steuern eines Schreibens von sowohl den Anwenderdaten als auch den ECC-Daten in den EEPROM (8); und
eine CPU (Zentralverarbeitungseinheit) (2) zum Erzeugen von ECC- Daten aus den im EEPROM (8) gespeicherten Anwenderdaten gemäß dem Programm und zum Speichern der erzeugten ECC-Daten und der ursprüngli chen Anwenderdaten in den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) und seinen Anwenderdaten-Speicherungsbereich (83) unter Steuerung der Schreibsteuerungseinrichtung (7); und weiterhin zum Lesen der im Anwenderdaten-Speicherungsbereich (83) gespeicherten Anwen derdaten und der im ECC-Daten-Speicherungsbereich (84) gespeicherten ECC-Daten, um einen in den Anwenderdaten enthaltenen Fehler basierend auf sowohl den gelesenen Anwenderdaten als auch den gelesenen ECC- Daten zu korrigieren.
10. Ein-Chip-Mikrocomputer nach Anspruch 91 dadurch gekennzeichnet, daß:
die CPU (2) ein internes Register (21) enthält, in welches eine vorausge wählte Menge von Anwenderdaten von einer externen Datenquelle sequen tiell gespeichert wird;
der EEPROM (8) weiterhin ein Anwenderdatenregister (81) enthält, zu welchem die vorausgewählte Menge von Anwenderdaten übertragen wird, und ein ECC-Datenregister (82); und
die CPU (2) ECC-Daten aus einer vorbestimmten Menge von in ihrem in ternen Register (21) gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem im EEPROM (8) enthalten ECC-Datenregister (82) über trägt; sowohl die Anwenderdaten des Anwenderdatenregisters (81) als auch die ECC-Daten des ECC-Datenregisters (82) in den Anwenderdaten- Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten- Speicherungsbereich (84) bei denselben Adressen schreibt; und auch sowohl die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM (8) gespeichert sind, liest, um die Fehlerkorrektur durchzuführen.
die CPU (2) ein internes Register (21) enthält, in welches eine vorausge wählte Menge von Anwenderdaten von einer externen Datenquelle sequen tiell gespeichert wird;
der EEPROM (8) weiterhin ein Anwenderdatenregister (81) enthält, zu welchem die vorausgewählte Menge von Anwenderdaten übertragen wird, und ein ECC-Datenregister (82); und
die CPU (2) ECC-Daten aus einer vorbestimmten Menge von in ihrem in ternen Register (21) gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem im EEPROM (8) enthalten ECC-Datenregister (82) über trägt; sowohl die Anwenderdaten des Anwenderdatenregisters (81) als auch die ECC-Daten des ECC-Datenregisters (82) in den Anwenderdaten- Speicherungsbereich (83) des EEPROM (8) und seinen ECC-Daten- Speicherungsbereich (84) bei denselben Adressen schreibt; und auch sowohl die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM (8) gespeichert sind, liest, um die Fehlerkorrektur durchzuführen.
11. Ein-Chip-Mikrocomputer nach Anspruch 9, dadurch gekennzeichnet, daß:
die Schreibsteuerungseinrichtung (7) weiterhin ein Anwenderdaten- Stapelregister (71) enthält, in welches eine vorausgewählte Menge von An wenderdaten von einer externen Datenquelle gespeichert wird, und ein ECC- Daten-Stapelregister (72);
die CPU (2) weiterhin ein internes Register (21) enthält, in welches eine vorausgewählte Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU (2) in einem ersten Verarbeitungszyklus bei einer ersten Adresse gespeicherte Anwenderdaten zum in der Schreibsteuerungseinrichtung (7) enthaltenen Anwenderdatenregister (81) überträgt und die zu dem Anwen derdatenregister (81) übertragenen Anwenderdaten in den im EEPROM (8) enthaltenen Anwenderdaten-Speicherungsbereich (83) speichert;
die CPU (2) in einem nächsten Verarbeitungszyklus und darauffolgenden Verarbeitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vor angehenden Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem in der Schreibsteuerungseinrichtung (7) enthal tenen ECC-Daten-Stapelregister (72) überträgt; die Anwenderdaten zu dem in dem EEPROM (8) enthaltenen Anwenderdaten-Stapelregister (71) überträgt, und auch die ECC-Daten zum ECC-Datenregister (82); eine Schreibadresse in bezug auf den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) um 1 dekrementiert; und sowohl die im Anwenderdatenregister (81) gespeicher ten Anwenderdaten als auch die im ECC-Datenregister (82) gespeicherten ECC-Daten jeweils in sowohl den Anwenderdaten-Speicherungsbereich (83) als auch den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) schreibt; und auch ihre oben definierten Verarbeitungsoperationen wiederholt ausführt;
die CPU (2) in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbestimmten Menge von im vorangehenden Verarbeitungszyklus gespei cherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem in der Schreibsteuerungseinrichtung (7) enthaltenen ECC-Daten-Stapelregister (72) überträgt; die erzeugten ECC-Daten zu dem im EEPROM (8) enthaltenen ECC-Datenregister (82) überträgt; eine Schreibadresse in bezug auf den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) um 1 dekrementiert; und die im ECC-Daten-Speicherungsbereich (84) des EEPROM (8) gespei cherten ECC-Daten schreibt;
die CPU (2) sowohl die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM (8) gespeichert sind, liest, um die Fehler korrekturen sequentiell auszuführen.
die Schreibsteuerungseinrichtung (7) weiterhin ein Anwenderdaten- Stapelregister (71) enthält, in welches eine vorausgewählte Menge von An wenderdaten von einer externen Datenquelle gespeichert wird, und ein ECC- Daten-Stapelregister (72);
die CPU (2) weiterhin ein internes Register (21) enthält, in welches eine vorausgewählte Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU (2) in einem ersten Verarbeitungszyklus bei einer ersten Adresse gespeicherte Anwenderdaten zum in der Schreibsteuerungseinrichtung (7) enthaltenen Anwenderdatenregister (81) überträgt und die zu dem Anwen derdatenregister (81) übertragenen Anwenderdaten in den im EEPROM (8) enthaltenen Anwenderdaten-Speicherungsbereich (83) speichert;
die CPU (2) in einem nächsten Verarbeitungszyklus und darauffolgenden Verarbeitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vor angehenden Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem in der Schreibsteuerungseinrichtung (7) enthal tenen ECC-Daten-Stapelregister (72) überträgt; die Anwenderdaten zu dem in dem EEPROM (8) enthaltenen Anwenderdaten-Stapelregister (71) überträgt, und auch die ECC-Daten zum ECC-Datenregister (82); eine Schreibadresse in bezug auf den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) um 1 dekrementiert; und sowohl die im Anwenderdatenregister (81) gespeicher ten Anwenderdaten als auch die im ECC-Datenregister (82) gespeicherten ECC-Daten jeweils in sowohl den Anwenderdaten-Speicherungsbereich (83) als auch den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) schreibt; und auch ihre oben definierten Verarbeitungsoperationen wiederholt ausführt;
die CPU (2) in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbestimmten Menge von im vorangehenden Verarbeitungszyklus gespei cherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem in der Schreibsteuerungseinrichtung (7) enthaltenen ECC-Daten-Stapelregister (72) überträgt; die erzeugten ECC-Daten zu dem im EEPROM (8) enthaltenen ECC-Datenregister (82) überträgt; eine Schreibadresse in bezug auf den ECC-Daten-Speicherungsbereich (84) des EEPROM (8) um 1 dekrementiert; und die im ECC-Daten-Speicherungsbereich (84) des EEPROM (8) gespei cherten ECC-Daten schreibt;
die CPU (2) sowohl die Anwenderdaten als auch die ECC-Daten, die bei denselben Adressen des EEPROM (8) gespeichert sind, liest, um die Fehler korrekturen sequentiell auszuführen.
12. Ein-Chip-Mikrocomputer nach Anspruch 9, dadurch gekennzeichnet, daß:
die Schreibsteuerungseinrichtung (7) weiterhin ein Anwenderdaten- Stapelregister (71) enthält, in welches eine vorausgewählte Menge von An wenderdaten von einer externen Datenquelle gespeichert wird, und ein ECC- Daten-Stapelregister (72);
die CPU (2) weiterhin ein internes Register (21) enthält, in welches eine vorausgewählte Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU (2) In einem ersten Verarbeitungszyklus bei einer ersten Adresse gespeicherte Anwenderdaten zu dem in der Schreibsteuerungseinrichtung (7) enthaltenen Anwenderdatenregister (81) überträgt und die zu dem Anwen derdatenregister (81) übertragenen Daten in den im EEPROM (8) enthaltenen Anwenderdaten-Speicherungsbereich (83) speichert;
die CPU (2) in einem nächsten Verarbeitungszyklus und darauffolgenden Verarbeitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vor angehenden Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem in der Schreibsteuerungseinrichtung (7) enthal tenen ECC-Daten-Stapelregister (72) überträgt die Anwenderdaten zu dem im EEPROM (8) enthaltenen Anwenderdaten-Stapelregister (71) überträgt, und auch die ECC-Daten zum ECC-Datenregister (82); und sowohl die im Anwenderdatenregister (81) gespeicherten Anwenderdaten als auch die im ECC-Datenregister (82) gespeicherten ECC-Daten jeweils in sowohl den An wenderdaten-Speicherungsbereich (83) als auch den ECC-Daten- Speicherungsbereich (84) des EEPROM (8) schreibt; und auch ihre oben de finierten Verarbeitungsoperationen wiederholt ausführt;
die CPU (2) in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbestimmten Menge von im vorangehenden Verarbeitungszyklus gespei cherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungseinrichtung (7) enthaltenen ECC-Daten-Stapelregister (72) überträgt; die erzeugten ECC-Daten zum im EEPROM (8) enthaltenen ECC- Datenregister (82) überträgt; und die im ECC-Daten-Speicherungsbereich (84) des EEPROM (8) gespeicherten ECC-Daten schreibt; und auch sowohl Anwenderdaten des EEPROM (8) als auch bei einer gegenüber einer Adres se der gelesenen Anwenderdaten um 1 inkrementierten Adresse gespeicher te ECC-Daten liest, um die Fehlerkorrektur sequentiell auszuführen.
die Schreibsteuerungseinrichtung (7) weiterhin ein Anwenderdaten- Stapelregister (71) enthält, in welches eine vorausgewählte Menge von An wenderdaten von einer externen Datenquelle gespeichert wird, und ein ECC- Daten-Stapelregister (72);
die CPU (2) weiterhin ein internes Register (21) enthält, in welches eine vorausgewählte Menge von Anwenderdaten von der externen Datenquelle gespeichert wird;
die CPU (2) In einem ersten Verarbeitungszyklus bei einer ersten Adresse gespeicherte Anwenderdaten zu dem in der Schreibsteuerungseinrichtung (7) enthaltenen Anwenderdatenregister (81) überträgt und die zu dem Anwen derdatenregister (81) übertragenen Daten in den im EEPROM (8) enthaltenen Anwenderdaten-Speicherungsbereich (83) speichert;
die CPU (2) in einem nächsten Verarbeitungszyklus und darauffolgenden Verarbeitungszyklen ECC-Daten aus einer vorbestimmten Menge von im vor angehenden Verarbeitungszyklus gespeicherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zu dem in der Schreibsteuerungseinrichtung (7) enthal tenen ECC-Daten-Stapelregister (72) überträgt die Anwenderdaten zu dem im EEPROM (8) enthaltenen Anwenderdaten-Stapelregister (71) überträgt, und auch die ECC-Daten zum ECC-Datenregister (82); und sowohl die im Anwenderdatenregister (81) gespeicherten Anwenderdaten als auch die im ECC-Datenregister (82) gespeicherten ECC-Daten jeweils in sowohl den An wenderdaten-Speicherungsbereich (83) als auch den ECC-Daten- Speicherungsbereich (84) des EEPROM (8) schreibt; und auch ihre oben de finierten Verarbeitungsoperationen wiederholt ausführt;
die CPU (2) in einem letzten Verarbeitungszyklus ECC-Daten aus einer vorbestimmten Menge von im vorangehenden Verarbeitungszyklus gespei cherten Anwenderdaten erzeugt; die erzeugten ECC-Daten zum in der Schreibsteuerungseinrichtung (7) enthaltenen ECC-Daten-Stapelregister (72) überträgt; die erzeugten ECC-Daten zum im EEPROM (8) enthaltenen ECC- Datenregister (82) überträgt; und die im ECC-Daten-Speicherungsbereich (84) des EEPROM (8) gespeicherten ECC-Daten schreibt; und auch sowohl Anwenderdaten des EEPROM (8) als auch bei einer gegenüber einer Adres se der gelesenen Anwenderdaten um 1 inkrementierten Adresse gespeicher te ECC-Daten liest, um die Fehlerkorrektur sequentiell auszuführen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09728798A JP3230485B2 (ja) | 1998-04-09 | 1998-04-09 | 1チップマイクロコンピュータ |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19916120A1 true DE19916120A1 (de) | 1999-10-28 |
Family
ID=14188303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19916120A Ceased DE19916120A1 (de) | 1998-04-09 | 1999-04-09 | Ein-Chip-Mikrocomputer, der ECC-Daten intern erzeugen kann |
Country Status (4)
Country | Link |
---|---|
US (1) | US6604214B1 (de) |
JP (1) | JP3230485B2 (de) |
KR (1) | KR100323236B1 (de) |
DE (1) | DE19916120A1 (de) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6941505B2 (en) | 2000-09-12 | 2005-09-06 | Hitachi, Ltd. | Data processing system and data processing method |
US7380131B1 (en) | 2001-01-19 | 2008-05-27 | Xilinx, Inc. | Copy protection without non-volatile memory |
US7191339B1 (en) * | 2001-09-10 | 2007-03-13 | Xilinx, Inc. | System and method for using a PLD identification code |
KR100645058B1 (ko) * | 2004-11-03 | 2006-11-10 | 삼성전자주식회사 | 데이터 신뢰성을 향상시킬 수 있는 메모리 관리 기법 |
US7464241B2 (en) * | 2004-11-22 | 2008-12-09 | Intel Corporation | Memory transaction burst operation and memory components supporting temporally multiplexed error correction coding |
US20060218467A1 (en) * | 2005-03-24 | 2006-09-28 | Sibigtroth James M | Memory having a portion that can be switched between use as data and use as error correction code (ECC) |
US7716497B1 (en) | 2005-06-14 | 2010-05-11 | Xilinx, Inc. | Bitstream protection without key storage |
TWI385666B (zh) * | 2007-05-25 | 2013-02-11 | Realtek Semiconductor Corp | 適用於快閃記憶體之資料結構、及其資料寫入方法及資料讀取方法 |
US8924819B2 (en) * | 2009-01-23 | 2014-12-30 | Macronix International Co., Ltd. | Memory device and operation method thereof |
TWI404067B (zh) * | 2009-02-27 | 2013-08-01 | Macronix Int Co Ltd | 記憶體裝置及其操作方法 |
KR101139187B1 (ko) * | 2009-12-28 | 2012-04-26 | (주)인디링스 | 버퍼 없이 에러를 검출하고 정정하는 컨트롤러 및 그 컨트롤러의 동작 방법 |
US8427193B1 (en) | 2010-12-07 | 2013-04-23 | Xilinx, Inc. | Intellectual property core protection for integrated circuits |
US8418006B1 (en) | 2010-12-07 | 2013-04-09 | Xilinx, Inc. | Protecting a design for an integrated circuit using a unique identifier |
US8386990B1 (en) | 2010-12-07 | 2013-02-26 | Xilinx, Inc. | Unique identifier derived from an intrinsic characteristic of an integrated circuit |
US9684559B1 (en) * | 2014-04-25 | 2017-06-20 | Altera Corporation | Methods and apparatus for storing error correction information on a memory controller circuit |
KR20170143084A (ko) * | 2016-06-17 | 2017-12-29 | 에스케이하이닉스 주식회사 | 반도체장치 및 반도체시스템 |
TWI680375B (zh) * | 2018-08-23 | 2019-12-21 | 慧榮科技股份有限公司 | 具有分散式信箱架構的多處理器系統及其處理器錯誤檢查方法 |
KR20200092036A (ko) * | 2019-01-24 | 2020-08-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01201736A (ja) | 1988-02-08 | 1989-08-14 | Mitsubishi Electric Corp | マイクロコンピュータ |
DE3833300A1 (de) | 1988-09-30 | 1990-04-05 | Claude Marchand | Chromatographiesaeulen-abschlusseinrichtung |
US5293388A (en) * | 1990-11-13 | 1994-03-08 | Hewlett-Packard Company | Compression/decompress with ECC data flow architecture |
JPH0729395A (ja) | 1993-06-25 | 1995-01-31 | Mitsubishi Electric Corp | Eeprom装置 |
JPH1089217A (ja) * | 1996-09-17 | 1998-04-07 | Honda Motor Co Ltd | 車両用盗難防止装置 |
US6026014A (en) * | 1996-12-20 | 2000-02-15 | Hitachi, Ltd. | Nonvolatile semiconductor memory and read method |
TW407234B (en) * | 1997-03-31 | 2000-10-01 | Hitachi Ltd | Semiconductor memory device, non-volatile semiconductor memory device and data reading method thereof |
US6145069A (en) * | 1999-01-29 | 2000-11-07 | Interactive Silicon, Inc. | Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices |
-
1998
- 1998-04-09 JP JP09728798A patent/JP3230485B2/ja not_active Expired - Fee Related
-
1999
- 1999-04-06 US US09/286,973 patent/US6604214B1/en not_active Expired - Lifetime
- 1999-04-09 DE DE19916120A patent/DE19916120A1/de not_active Ceased
- 1999-04-09 KR KR1019990012535A patent/KR100323236B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP3230485B2 (ja) | 2001-11-19 |
US6604214B1 (en) | 2003-08-05 |
KR19990083088A (ko) | 1999-11-25 |
KR100323236B1 (ko) | 2002-02-19 |
JPH11296392A (ja) | 1999-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE19916120A1 (de) | Ein-Chip-Mikrocomputer, der ECC-Daten intern erzeugen kann | |
EP0721644B1 (de) | Verfahren zur vollständigen neuprogrammierung eines löschbaren, nichtflüchtigen speichers | |
DE69130554T2 (de) | Registerschaltung zum Kopieren des Inhalts eines Registers in ein anderes Register | |
DE3128729C2 (de) | Halbleiter-Speichersystem | |
DE3128740C2 (de) | ||
DE2910839A1 (de) | Einrichtung zur ausfuehrung einer speziellen verzweigungsinstruktion | |
DE3900187A1 (de) | Ein-chip-mikrocomputer | |
DE4418892A1 (de) | Mikrocomputer | |
DE69128268T2 (de) | Mikrocomputer mit einer Übertragungseinheit für serielle Daten | |
DE69130513T2 (de) | Verfahren zur Durchführung boolescher Operationen zwischen zwei beliebigen Bits von zwei beliebigen Registern | |
DE69717385T2 (de) | Verfahren und System zur Speichereinrichtungsprüfung | |
DE102009022330A1 (de) | Mikrocomputer mit einer zentralen Verarbeitungseinheit und einem Pulsbreitenmodulations-Zeitgeber | |
DE19951534A1 (de) | Integrierte Halbleiterschaltung | |
DE69500748T2 (de) | Elektronischer Schaltkreis und Verfahren für die Verwendung mit einem Koprozessor | |
DE19956704A1 (de) | Interruptsteuerung | |
DE69511019T2 (de) | Datenprozessor mit voneinander getrenntem Datenbus und Befehlsbus | |
DE69429492T2 (de) | Mikroprozessor mit Registerbankarchitektur | |
DE19919388A1 (de) | Programmprüfverfahren, Programmprüfvorrichtung und computerlesbares Aufzeichnungsmedium zum Aufzeichnen eines Zielprogramm-Prüfprogramms, das die Ablaufverfolgungsunterbrechungszeit reduzieren kann | |
DE2755656A1 (de) | Einrichtung zum speicherschutz fuer digitalspeicher | |
DE2108157A1 (de) | Datenverarbeitungsanlage mit über lagertem Speicherverkehr | |
DE3200626C2 (de) | Verfahren zur Überprüfung, ob ein außer dem Hauptspeicher vorgesehener weiterer Speicher in ein Mikrocomputersystem eingefügt ist | |
DE69734910T2 (de) | Verfahren zur Identifizierung eines Peripheriegerätes in einem Halbleitergerät | |
DE69502133T2 (de) | Datenprozessor mit gemeinsamen Anschluss zur Überwachung von internen und externen Speicherereignissen | |
DE10058464B4 (de) | Mustererzeugungsverfahren, dieses verwendender Mustergenerator, und diesen Mustergenerator verwendendes Speichertestgerät | |
DE69126249T2 (de) | Verarbeitungsvorrichtung und Verfahren zur Programmierung einer solchen Vorrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification |
Ipc: G06F 11/08 |
|
8127 | New person/name/address of the applicant |
Owner name: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP |
|
8131 | Rejection |