JPH05250884A - Nonvolatile storage device - Google Patents

Nonvolatile storage device

Info

Publication number
JPH05250884A
JPH05250884A JP8147292A JP8147292A JPH05250884A JP H05250884 A JPH05250884 A JP H05250884A JP 8147292 A JP8147292 A JP 8147292A JP 8147292 A JP8147292 A JP 8147292A JP H05250884 A JPH05250884 A JP H05250884A
Authority
JP
Japan
Prior art keywords
data
unit
memory
host
section
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.)
Pending
Application number
JP8147292A
Other languages
Japanese (ja)
Inventor
Yusaku Unno
雄策 海野
Yukihiko Kitazawa
幸彦 北沢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP8147292A priority Critical patent/JPH05250884A/en
Publication of JPH05250884A publication Critical patent/JPH05250884A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To process a device at high speed at the time of writing data. CONSTITUTION:A memory part 16 is constituted of a frash EEPROM and when data is written in the memory part 16, after the data is retreated to a buffer part 17, the data of the memory 16 is erased. At this time, since the buffer part 17 is constituted of a memory reading/writing by a prescribed unit amount e.g. by 1 byte, erasure processing at the time of writing the data in the buffer part 17 is facilitated.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、FEEPROM(フラ
ッシュ・EEPROM)を使用した不揮発性記憶装置に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a nonvolatile memory device using FEEPROM (flash / EEPROM).

【0002】[0002]

【従来の技術】半導体ディスク装置とは、ホストから見
てディスクと同様に制御が可能で、かつ機械的な動作部
分がないため、高速アクセスが可能な装置である。従
来、このような半導体ディスク装置は、揮発性メモリチ
ップと、それをバックアップするための電池とで構成さ
れていた。しかしながら、このような構成は完全な不揮
発性ではないため、長期の電源オフ時等にデータの内容
を保証することができなかった。
2. Description of the Related Art A semiconductor disk device is a device that can be accessed at high speed because it can be controlled in the same way as a disk as viewed from the host and has no mechanical operation part. Conventionally, such a semiconductor disk device has been composed of a volatile memory chip and a battery for backing it up. However, since such a configuration is not completely non-volatile, the content of data cannot be guaranteed when the power is turned off for a long period of time.

【0003】ところが、近年、不揮発性メモリチップと
して、フラッシュEEPROM(以下、FEEPROM
と称す)が実用化されるようになり、このチップを使用
した不揮発性半導体ディスク装置の開発が盛んに行われ
ている。このFEEPROMとは、EEPROM(電気
的消去、再書込み可能リード・オンリ・メモリ)の一種
であり、電気的に消去ができ、バイト毎にプログラム書
込みができ、電源を必要とせず、メモリの内容が保証で
きるという特長を持つ。
However, in recent years, a flash EEPROM (hereinafter referred to as FEEPROM) has been used as a nonvolatile memory chip.
Has been put to practical use, and non-volatile semiconductor disk devices using this chip have been actively developed. This FEEPROM is a type of EEPROM (electrically erasable and rewritable read-only memory), which can be electrically erased, can be program-written byte by byte, does not require a power supply, and has memory contents. It has the feature that it can be guaranteed.

【0004】一方、上記の長所とは逆に、次のような短
所を有している。 (1) 書込みの際に上書きができないため、一旦消去して
からバイト毎に書込み(データを書き換える)を行う必
要がある。なお、ここで消去する単位は、チップによっ
て異なるが、チップ単位に消去を行うものが主流であ
る。 (2) 書換え回数による制限があり、この制限を超える
と、チップへの書込みができなくなる。
On the other hand, contrary to the above advantages, it has the following disadvantages. (1) Since overwriting cannot be performed when writing, it is necessary to erase (write once) (write data) byte by byte. The unit to be erased here differs depending on the chip, but the mainstream is to erase on a chip-by-chip basis. (2) There is a limit due to the number of rewrites. If this limit is exceeded, writing to the chip becomes impossible.

【0005】次に、FEEPROMを使用した従来の不
揮発性記憶装置を説明する。図2は、従来の不揮発性記
憶装置としての不揮発性半導体ディスク装置のブロック
図である。この図2において、1は不揮発性記憶装置
(不揮発性半導体ディスク装置)、2はこの不揮発性記
憶装置1が図示しないホストと接続されるためのシステ
ムバスである。不揮発性記憶装置1は、ホストインタフ
ェース部3、プロセッサ部4、プロセッサメモリ部5、
メモリ部6、バッファ部7、内部バス8から構成されて
いる。
Next, a conventional nonvolatile memory device using FEEPROM will be described. FIG. 2 is a block diagram of a non-volatile semiconductor disk device as a conventional non-volatile memory device. In FIG. 2, reference numeral 1 is a non-volatile memory device (non-volatile semiconductor disk device), and 2 is a system bus for connecting the non-volatile memory device 1 to a host (not shown). The non-volatile storage device 1 includes a host interface unit 3, a processor unit 4, a processor memory unit 5,
It is composed of a memory unit 6, a buffer unit 7, and an internal bus 8.

【0006】ホストインタフェース部3はホストとのイ
ンタフェース制御を行う部分であり、プロセッサ部4
は、ホストからのコマンドを解釈し、不揮発性記憶装置
1をディスク装置に見せるよう制御等を行う部分であ
る。また、プロセッサメモリ部5はプロセッサ部4の動
作を制御する部分である。メモリ部6およびバッファ部
7は、FEEPROMで構成され、メモリ部6はディレ
クトリとデータを格納し、バッファ部7は、メモリ部6
に対し、データの上書きを行う際、メモリ部6を消去す
る前にメモリ部6の内容を一旦待避させておくためのメ
モリである。また、内部バス8は不揮発性記憶装置1内
の構成要素を接続するためのバスである。
The host interface section 3 is a section for performing interface control with the host, and the processor section 4
Is a part that interprets a command from the host and controls the non-volatile storage device 1 to appear as a disk device. The processor memory unit 5 is a unit that controls the operation of the processor unit 4. The memory unit 6 and the buffer unit 7 are composed of FEEPROMs, the memory unit 6 stores directories and data, and the buffer unit 7 includes the memory unit 6
On the other hand, this is a memory for temporarily saving the contents of the memory unit 6 before erasing the memory unit 6 when overwriting data. The internal bus 8 is a bus for connecting the constituent elements in the nonvolatile memory device 1.

【0007】図3は上記メモリ部6とバッファ部7の詳
細を示す図である。即ち、この例では、メモリ部6を消
去単位にmブロック化し、1ブロック分の容量をバッフ
ァ部7の容量としている。図4にメモリ部6の詳細を示
す。不揮発性記憶装置1のメモリ部6は、ホストからデ
ィスク装置に見せるため、ディスク装置と同様にディレ
クトリ領域6aと、データ領域6bとで構成されてい
る。尚、一般的に、メモリ部6の全容量に対するディレ
クトリ領域の比率は3〜5%程度である。
FIG. 3 is a diagram showing details of the memory unit 6 and the buffer unit 7. That is, in this example, the memory unit 6 is divided into m blocks in the erase unit, and the capacity of one block is used as the capacity of the buffer unit 7. FIG. 4 shows details of the memory unit 6. The memory unit 6 of the non-volatile storage device 1 is made up of a directory area 6a and a data area 6b in the same manner as the disk device so that the host device looks like the disk device. Generally, the ratio of the directory area to the total capacity of the memory unit 6 is about 3 to 5%.

【0008】次に、上記不揮発性記憶装置の動作を説明
する。図5、図6、図7はその動作を説明するフローチ
ャートである。 [リード動作]図5は、リード動作のフローチャートで
あり、このフローチャートに沿って説明する。先ず、図
示しないホストはリード動作を要求する場合、不揮発性
記憶装置1に対し、リードコマンド、リードデータ数、
先頭アドレスをシステムバス2を介して発行する。これ
により、ホストインタフェース部3は、前記のリードコ
マンド、リードデータ数、先頭アドレスを、ホストイン
タフェース部3内の図示しないコマンドレジスタ、デー
タ数レジスタ、先頭アドレスレジスタにセットし、プロ
セッサ部4に割込みを上げる。
Next, the operation of the nonvolatile memory device will be described. 5, 6 and 7 are flowcharts for explaining the operation. [Read Operation] FIG. 5 is a flowchart of the read operation, which will be described below. First, when a host (not shown) requests a read operation, a read command, the number of read data,
The head address is issued via the system bus 2. As a result, the host interface unit 3 sets the read command, the number of read data, and the start address in a command register, a data number register, and a start address register (not shown) in the host interface unit 3, and interrupts the processor unit 4. increase.

【0009】プロセッサ部4は、この割込みを受け付け
ると、コマンドレジスタをリードし(ステップS10
1)、ホストがリードコマンドを発行したことを認識す
る。次にプロセッサ部4は、データ数レジスタと先頭ア
ドレスレジスタをリードし(ステップS102)、メモ
リ部6からリードする領域を認識する。次に、プロセッ
サ部4はメモリ部6内の所定の領域から1ワードのデー
タをリードし(ステップS103)、リードしたデータ
をホストに転送するため、ホストインタフェース部3を
介して割込みをホストに対して上げる(ステップS10
4)。ホストはこの割込みを受け付けると、1ワードの
データをリードする(ステップS105)。必要なデー
タ数をホストに転送し終えると(ステップS106)、
プロセッサ部4はホストに対し、終了を通知するため、
割込みをホストインタフェース部3に対して行う(ステ
ップS107)。
Upon receiving this interrupt, the processor unit 4 reads the command register (step S10).
1) Recognize that the host has issued a read command. Next, the processor unit 4 reads the data number register and the head address register (step S102), and recognizes the area to be read from the memory unit 6. Next, the processor unit 4 reads one word of data from a predetermined area in the memory unit 6 (step S103), and transfers the read data to the host. Therefore, an interrupt is issued to the host via the host interface unit 3. (Step S10
4). When the host accepts this interrupt, it reads 1-word data (step S105). When the required number of data has been transferred to the host (step S106),
Since the processor unit 4 notifies the host of the end,
An interrupt is made to the host interface unit 3 (step S107).

【0010】[ライト動作]図6、図7はライト動作の
フローチャートである。この場合も、上記のリード動作
と同様に図示しないホストがライト動作を要求する場
合、不揮発性記憶装置1に対し、ライトコマンド、ライ
トデータ数、先頭アドレスを発行する。ホストインタフ
ェース部3は、リード動作同様、ホストインタフェース
部3内の図示しないコマンドレジスタ、データ数レジス
タ、先頭アドレスレジスタに、これらライトコマンド、
ライトデータ数、先頭アドレスをセットし、プロセッサ
部4に割込みを上げる。プロセッサ部4は、割込みを受
け付けると、コマンドレジスタをリードし(ステップS
201)、ホストがライトコマンドを発行したことを認
識する。次に、プロセッサ部4はデータ数レジスタと先
頭アドレスレジスタをリードし(ステップS202)、
メモリ部6へ書込みを行う領域を知り、メモリ部6内の
該領域への上書きが可能か否かを判断する(ステップS
203)。
[Write Operation] FIGS. 6 and 7 are flowcharts of the write operation. Also in this case, when a host (not shown) requests a write operation as in the above read operation, the write command, the number of write data, and the start address are issued to the nonvolatile memory device 1. As with the read operation, the host interface section 3 writes these write commands to a command register, a data number register, and a head address register (not shown) in the host interface section 3.
The number of write data and the start address are set, and the processor unit 4 is interrupted. When accepting the interrupt, the processor unit 4 reads the command register (step S
201), recognizing that the host has issued a write command. Next, the processor unit 4 reads the data number register and the head address register (step S202),
Knowing the area to be written in the memory section 6, it is determined whether or not the area in the memory section 6 can be overwritten (step S
203).

【0011】ステップS203において、メモリ部6へ
の上書きが不可能な場合は、更にバッファ部7への上書
きができるか否かを判断する(ステップS204)。こ
こで、バッファ部7への上書きが可能な場合は何もせ
ず、ステップS206に進み、不可能な場合は、バッフ
ァ部7のデータを消去する(ステップS205)。そし
て、ステップS206に進み、メモリ部6内の上書きが
必要な領域が含まれる1ブロック分のデータを転送し、
バッファ部7に格納する。但し、全データを転送してし
まうと、後述するステップS210にて上書き処理がで
きないため、先頭アドレスとデータ数情報をもとにステ
ップS210にて書き込みを行う領域に対しては、デー
タ転送は行わない。その後、メモリ部6内の上書きが必
要な領域が含まれる1ブロック分のデータを消去し(ス
テップS207)、更に、ホストインタフェース部3を
介してホストに割込みを上げてデータを要求する(ステ
ップS208)。
If it is impossible to overwrite the memory unit 6 in step S203, it is further determined whether or not the buffer unit 7 can be overwritten (step S204). If the buffer unit 7 can be overwritten, nothing is done, and the process proceeds to step S206. If not, the data in the buffer unit 7 is erased (step S205). Then, the process proceeds to step S206 to transfer the data for one block including the area in the memory unit 6 that needs to be overwritten,
The data is stored in the buffer unit 7. However, once all the data has been transferred, overwrite processing cannot be performed in step S210, which will be described later. Therefore, data transfer is not performed in the area to be written in step S210 based on the start address and the number-of-data information. Absent. After that, one block of data including an area in the memory unit 6 that needs to be overwritten is erased (step S207), and an interrupt is issued to the host via the host interface unit 3 to request the data (step S208). ).

【0012】ホストは、上記の割込みを受け付けると、
1ワードのデータをライトする(ステップS209)。
そして、プロセッサ部4は、ホストから送られてくるデ
ータを、メモリ部6へ書込みを行う領域に合わせてバッ
ファ部7内の所定の領域に書き込む(ステップS21
0)。ホストから必要なデータ数分のライト処理が終了
すると(ステップS211)、プロセッサ部4はホスト
に対して終了を通知するため、割込みをホストインタフ
ェース部3を介して上げ(ステップS212)、バッフ
ァ部7の内容を転送し、メモリ部6内の該当ブロックに
格納する(ステップS213)。
When the host receives the above interrupt,
Data of one word is written (step S209).
Then, the processor unit 4 writes the data sent from the host in a predetermined area in the buffer unit 7 in accordance with the area to be written in the memory unit 6 (step S21).
0). When the write processing for the required number of data is completed from the host (step S211), the processor unit 4 notifies the host of the end, so an interrupt is raised via the host interface unit 3 (step S212). Is transferred and stored in the corresponding block in the memory unit 6 (step S213).

【0013】また、ステップS203において、メモリ
部6への上書きが可能な場合は、図7に示すステップに
進み、プロセッサ部4はホストインタフェース部3を介
してホストに割込みを上げてデータを要求し(ステップ
S214)、ホストのライト処理が終了すると(ステッ
プS215)、プロセッサ部4はホストから送られてき
たデータをバッファ部7を介さず直接メモリ部6に書き
込む(ステップS216)。必要なデータ数がメモリ部
6に書き込まれると(ステップS217)、プロセッサ
部4はホストに対し、終了を通知するため割込みをホス
トインタフェース部3を介して行う(ステップS21
8)。
If it is possible to overwrite the memory unit 6 in step S203, the process proceeds to the step shown in FIG. 7, and the processor unit 4 raises an interrupt to the host via the host interface unit 3 to request data. When the write processing of the host is completed (step S214) (step S215), the processor unit 4 writes the data sent from the host directly into the memory unit 6 without passing through the buffer unit 7 (step S216). When the required number of data is written in the memory unit 6 (step S217), the processor unit 4 makes an interrupt to notify the host of the end via the host interface unit 3 (step S21).
8).

【0014】次に、アプリケーションプログラムが、一
般的なオペレーションシステムのファイルシステムを介
して不揮発性記憶装置1を使用する場合の動作を説明す
る。図8および図9はファイルのリード/ライトを要求
した場合の動作を説明するシーケンスチャートであり、
図8はリード要求時、図9はライト要求時の動作であ
る。
Next, the operation when the application program uses the non-volatile storage device 1 via the file system of a general operation system will be described. 8 and 9 are sequence charts for explaining the operation when a file read / write request is made.
FIG. 8 shows an operation when a read request is made, and FIG. 9 shows an operation when a write request is made.

【0015】[リード動作]アプリケーションプログラ
ムが、ファイルシステムに対して不揮発性記憶装置1内
のデータをリードする場合、ファイルシステムはデータ
をリードする前に、データが格納されている場所(メモ
リ部6内の所定場所)、データの属性情報(アクセス権
等)などを認識する必要がある。一般的に、格納場所情
報、属性情報等は、メモリ部6内のディレクトリ領域6
aに格納されているので、先ずディレクトリ領域6aに
格納されている格納情報、属性情報をリードしてから所
定のデータをデータ領域6bからリードする。
[Read Operation] When the application program reads the data in the non-volatile storage device 1 to the file system, the file system stores the data (the memory section 6) before reading the data. It is necessary to recognize the predetermined location in the), attribute information of the data (access right, etc.), and the like. Generally, storage location information, attribute information, etc. are stored in the directory area 6 in the memory unit 6.
Since it is stored in a, the storage information and the attribute information stored in the directory area 6a are first read, and then the predetermined data is read from the data area 6b.

【0016】即ち、アプリケーションプログラムがファ
イルシステムに対して、Aファイルのリード要求を行っ
た場合(ステップ)、ファイルシステムは不揮発性記
憶装置1に対してAファイル用ディレクトリのリード要
求を行う(ステップ)。この要求に対して不揮発性記
憶装置1は、Aファイル用ディレクトリのデータを転送
する(ステップ)。次いでファイルシステムはAファ
イルのリード要求を不揮発性記憶装置1に対して行い
(ステップ)、不揮発性記憶装置1は、Aファイルの
データをファイルシステムに対して転送する(ステップ
)。これにより、ファイルシステムは、Aファイルの
データをアプリケーションプログラムに転送する(ステ
ップ)。尚、不揮発性記憶装置1のリード処理C,D
は、上述した不揮発性記憶装置1のリード動作通りに行
う。
That is, when the application program makes a read request for the A file to the file system (step), the file system makes a read request for the A file directory to the nonvolatile storage device 1 (step). .. In response to this request, the non-volatile storage device 1 transfers the data in the A file directory (step). Next, the file system makes a read request for the A file to the non-volatile storage device 1 (step), and the non-volatile storage device 1 transfers the data of the A file to the file system (step). As a result, the file system transfers the data of the A file to the application program (step). Incidentally, the read processing C, D of the nonvolatile memory device 1
Is performed according to the read operation of the nonvolatile memory device 1 described above.

【0017】[ライト動作]アプリケーションプログラ
ムがファイルシステムを介して不揮発性記憶装置1内に
データを書き込む場合、データを書き込む前に、データ
の格納場所、属性情報等をディレクトリ領域に書込み、
次に所定の領域にデータを書き込む。ディレクトリ領域
はメモリ部6内にあるため、上書き処理ができず、上書
きが必要な場合は、データ領域に上書きする処理と同様
に、一旦ディレクトリ領域の内容をバッファ部7に待避
し、消去してから上書きする必要がある。
[Write Operation] When the application program writes data in the non-volatile storage device 1 via the file system, the data storage location, attribute information, etc. are written in the directory area before writing the data.
Next, data is written in a predetermined area. Since the directory area is in the memory unit 6, if the overwriting process cannot be performed and the overwriting is necessary, the contents of the directory region are temporarily saved in the buffer unit 7 and erased as in the process of overwriting the data area. Need to overwrite from.

【0018】即ち、アプリケーションプログラムがファ
イルシステムに対して、Bファイルのライト要求を行っ
た場合(ステップ)、ファイルシステムは不揮発性記
憶装置1に対してBファイル用ディレクトリのライト要
求を行い(ステップ)、その後、Bファイル用ディレ
クトリのデータを転送する(ステップ)。次いで、フ
ァイルシステムは不揮発性記憶装置1に対してBファイ
ルのライト要求を行い(ステップ)、ファイルシステ
ムにアプリケーションプログラムからBファイルのデー
タが転送されると(ステップ)、ファイルシステムは
このBファイルのデータを不揮発性記憶装置1に転送す
る(ステップ)。尚、不揮発性記憶装置1のライト処
理E,Fは、上述した不揮発性記憶装置1のライト動作
通りに行う。
That is, when the application program makes a B file write request to the file system (step), the file system makes a B file directory write request to the nonvolatile storage device 1 (step). Then, the data in the B file directory is transferred (step). Next, the file system makes a write request for the B file to the non-volatile storage device 1 (step), and when the data of the B file is transferred from the application program to the file system (step), the file system writes the B file The data is transferred to the non-volatile storage device 1 (step). The write processes E and F of the nonvolatile memory device 1 are performed according to the write operation of the nonvolatile memory device 1 described above.

【0019】[0019]

【発明が解決しようとする課題】しかしながら、上記の
ように構成された不揮発性記憶装置では以下に示す問題
点を有していた。 メモリ部6に対して上書きする場合、一旦メモリ部6
の内容をバッファ部7に転送し、メモリ部6を消去して
いる。ここで、バッファ部7にデータを転送する時、バ
ッファ部7に既にデータが書き込んであれば常にバッフ
ァ部7を消去しなければならないため、装置としての性
能が落ちてしまう。
However, the non-volatile memory device configured as described above has the following problems. When overwriting the memory unit 6, once the memory unit 6 is overwritten.
Is transferred to the buffer unit 7 and the memory unit 6 is erased. Here, when data is transferred to the buffer unit 7, if the data has already been written in the buffer unit 7, the buffer unit 7 must be erased at all times, so that the performance of the device deteriorates.

【0020】アプリケーションプログラムがファイル
システムを介して不揮発性記憶装置1内にデータを書き
込む場合、データを書き込む前に、データの格納場所、
属性情報等をディレクトリ領域6aに書き込む必要があ
る。ディレクトリ領域6aはメモリ部6の一部を使用し
ているため、ディレクトリ領域6aもFEEPROMで
構成されている。FEEPROMは上書きする場合、上
述したように消去する必要があるため、ディレクトリ領
域6aへの書込みが集中すると、メモリ部6からバッフ
ァ部7へのデータ転送処理、消去処理が増え、装置とし
ての性能が落ちてしまう。
When the application program writes data in the non-volatile memory device 1 via the file system, before writing the data, the data storage location,
It is necessary to write the attribute information and the like in the directory area 6a. Since the directory area 6a uses a part of the memory unit 6, the directory area 6a is also configured by the FEEPROM. When the FEEPROM is overwritten, it is necessary to erase it as described above. Therefore, if the writing to the directory area 6a is concentrated, the data transfer processing and the erasing processing from the memory unit 6 to the buffer unit 7 increase, and the performance of the device is improved. It will fall.

【0021】ホストからのライト要求に対し、上書き
が必要な場合、メモリ部6を消去する前に、バッファ部
7に格納されているデータの内容にかかわらず、常にバ
ッファ部7への待避(転送)を行っているので、例えば
待避させるデータと、バッファ部7に格納されているデ
ータが同一であった場合では、無駄な処理を行ってしま
うという問題があった。。
When a write request from the host needs to be overwritten, before the memory section 6 is erased, regardless of the contents of the data stored in the buffer section 7, it is always saved (transferred) to the buffer section 7. However, if the data to be saved and the data stored in the buffer unit 7 are the same, there is a problem that unnecessary processing is performed. .

【0022】従来の不揮発性記憶装置では、書換え回
数の監視を行っていないため、何の前触れもなく書込み
ができなくなってしまう恐れがあった。本発明は、上記
従来の問題点を解決するためになされたもので、書込み
処理の高速化等、性能向上を図ることのできる不揮発性
記憶装置を提供することを目的とする。
In the conventional nonvolatile memory device, since the number of times of rewriting is not monitored, there is a fear that writing cannot be performed without any warning. The present invention has been made to solve the above-mentioned conventional problems, and an object of the present invention is to provide a non-volatile memory device capable of improving performance such as speeding up of write processing.

【0023】[0023]

【課題を解決するための手段】本発明における第1の発
明の不揮発性記憶装置は、フラッシュEEPROMで構
成され、データを格納するメモリ部と、所定の単位量で
リード/ライトが可能なメモリで構成され、前記メモリ
部のデータを消去する場合に、そのデータを待避させる
バッファ部とを備えたことを特徴とするものである。
A nonvolatile memory device according to a first invention of the present invention comprises a flash EEPROM, a memory section for storing data, and a memory capable of reading / writing in a predetermined unit amount. And a buffer unit for saving the data when the data in the memory unit is erased.

【0024】第2の発明の不揮発性記憶装置は、フラッ
シュEEPROMで構成され、データを格納するメモリ
部と、所定の単位量でリード/ライトが可能な不揮発性
メモリで構成され、前記メモリ部へのデータ格納情報を
格納するディレクトリ部とを備えたことを特徴とするも
のである。
The non-volatile memory device of the second invention comprises a flash EEPROM, a memory section for storing data, and a non-volatile memory capable of reading / writing by a predetermined unit amount. And a directory section for storing the data storage information of.

【0025】第3の発明の不揮発性記憶装置は、フラッ
シュEEPROMで構成され、データを格納するメモリ
部と、前記メモリ部のデータを消去する場合に、そのデ
ータを待避させるバッファ部と、前記メモリ部から前記
バッファ部にデータを転送する場合、前記メモリ部と前
記バッファ部の格納されているデータが一致するか否か
を判定し、一致した場合はその転送を行わないよう制御
する転送制御手段とを備えたことを特徴とするものであ
る。
A nonvolatile memory device according to a third aspect of the present invention comprises a flash EEPROM, a memory section for storing data, a buffer section for saving the data in the memory section when the data is erased, and the memory. Transfer unit for transferring data from the memory unit to the buffer unit, it is determined whether the data stored in the memory unit and the data stored in the buffer unit match, and if they match, the transfer control unit controls not to perform the transfer. It is characterized by having and.

【0026】第4の発明の不揮発性記憶装置は、フラッ
シュEEPROMで構成され、データを格納するメモリ
部と、前記メモリ部へのデータ書換え回数を認識する書
換え回数認識部とを備えたことを特徴とするものであ
る。
A non-volatile memory device according to a fourth aspect of the present invention comprises a flash EEPROM, and includes a memory section for storing data and a rewriting frequency recognizing section for recognizing the number of times data is rewritten to the memory section. It is what

【0027】[0027]

【作用】本発明の不揮発性記憶装置においては、メモリ
部は、フラッシュEEPROMで構成され、このメモリ
部にデータを書き込む場合は、そのデータをバッファ部
に待避させてからデータ消去を行う。ここで、バッファ
部は所定の単位量、例えば1バイト単位でリード/ライ
トが可能なメモリで構成されているため、バッファ部に
データを書き込む際の消去処理が不要となる。従って、
データ書込み時の処理が高速となる。
In the non-volatile memory device of the present invention, the memory section is composed of a flash EEPROM, and when writing data to this memory section, the data is saved in the buffer section before the data is erased. Here, since the buffer unit is composed of a memory that can read / write in a predetermined unit amount, for example, in units of 1 byte, erasing processing when writing data in the buffer unit is not necessary. Therefore,
The processing for writing data becomes faster.

【0028】[0028]

【実施例】以下、本発明の実施例を図面を用いて詳細に
説明する。図1は本発明の不揮発性記憶装置の第1の実
施例を示すブロック図である。この図1において、11
は不揮発性記憶装置(不揮発性半導体ディスク装置)、
2はこの不揮発性記憶装置11が図示しないホストと接
続されるためのシステムバスである。不揮発性記憶装置
11は、ホストインタフェース部13、プロセッサ部1
4、プロセッサメモリ部15、メモリ部16、バッファ
部17、内部バス18から構成されている。
Embodiments of the present invention will be described in detail below with reference to the drawings. FIG. 1 is a block diagram showing a first embodiment of the nonvolatile memory device of the present invention. In FIG. 1, 11
Is a non-volatile storage device (non-volatile semiconductor disk device),
Reference numeral 2 is a system bus for connecting the nonvolatile memory device 11 to a host (not shown). The non-volatile storage device 11 includes a host interface unit 13 and a processor unit 1.
4, a processor memory unit 15, a memory unit 16, a buffer unit 17, and an internal bus 18.

【0029】ここで、ホストインタフェース部13は、
従来と同様にホストとのインタフェース制御を行う部分
であり、プロセッサ部14は、ホストからのコマンドを
解釈し、不揮発性記憶装置11をディスク装置に見せる
よう制御等を行う部分である。また、プロセッサメモリ
部15はプロセッサ部14の動作を制御する部分であ
る。メモリ部16は、FEEPROMで構成され、従来
と同様、ディレクトリとデータを格納する。また、バッ
ファ部17は、その機能としてメモリ部16に対してデ
ータの上書きを行う際、メモリ部16を消去する前にそ
の内容を一旦待避させておくためのものであるが、本実
施例では、RAM等の揮発性のメモリチップで構成され
ている。尚、内部バス18は従来と同様、不揮発性記憶
装置11内の構成要素を接続するためのバスである。
Here, the host interface unit 13 is
This is a part for performing interface control with the host as in the conventional case, and the processor part 14 is a part for interpreting a command from the host and controlling the non-volatile storage device 11 to appear as a disk device. The processor memory unit 15 is a unit that controls the operation of the processor unit 14. The memory unit 16 is composed of an FEEPROM and stores a directory and data as in the conventional case. The buffer unit 17 has a function of temporarily saving the contents of the memory unit 16 before erasing the memory unit 16 when overwriting data in the memory unit 16. , RAM and other volatile memory chips. The internal bus 18 is a bus for connecting the constituent elements in the non-volatile memory device 11, as in the conventional case.

【0030】次に、上記不揮発性記憶装置の動作を説明
する。 [リード動作]ここで、本実施例のリード動作は、従来
の動作フローと同様である。即ち、その動作は図5に示
したフローチャートと同様であるため、ここでの説明は
省略する。
Next, the operation of the nonvolatile memory device will be described. [Read Operation] Here, the read operation of this embodiment is the same as the conventional operation flow. That is, since the operation is similar to that of the flowchart shown in FIG. 5, description thereof is omitted here.

【0031】[ライト動作]図10はライト動作のフロ
ーチャートである。図示しないホストがライト動作を要
求する場合、不揮発性記憶装置11に対し、ライトコマ
ンド、ライトデータ数、先頭アドレスを発行する。ホス
トインタフェース部13は、リード動作同様、ホストイ
ンタフェース部13内の図示しないコマンドレジスタ、
データ数レジスタ、先頭アドレスレジスタに、これらラ
イトコマンド、ライトデータ数、先頭アドレスをセット
し、プロセッサ部14に割込みを上げる。プロセッサ部
14は、割込みを受け付けると、コマンドレジスタをリ
ードし(ステップS301)、ホストがライトコマンド
を発行したことを認識する。次に、プロセッサ部14は
データ数レジスタと先頭アドレスレジスタをリードし
(ステップS302)、メモリ部16へ書込みを行う領
域を知り、メモリ部16内の該領域への上書きが可能か
否かを判断する(ステップS303)。
[Write Operation] FIG. 10 is a flowchart of the write operation. When a host (not shown) requests a write operation, the write command, the number of write data, and the start address are issued to the nonvolatile memory device 11. The host interface unit 13 has a command register (not shown) in the host interface unit 13, as in the read operation.
The write command, the write data number, and the start address are set in the data number register and the start address register, and the processor unit 14 is interrupted. Upon receiving the interrupt, the processor unit 14 reads the command register (step S301) and recognizes that the host has issued the write command. Next, the processor unit 14 reads the data number register and the head address register (step S302), knows the area to write to the memory unit 16, and determines whether or not the area in the memory unit 16 can be overwritten. Yes (step S303).

【0032】ステップS303において、メモリ部16
への上書きが不可能な場合、従来では、バッファ部への
上書きができるか否かを調べ、これが不可能な場合はバ
ッファ部のデータを消去することが必要であったが、本
実施例では、そのままメモリ部16内の上書きが必要な
領域が含まれる1ブロック分のデータを転送し、バッフ
ァ部17に格納する(ステップS304)。その後、メ
モリ部16内の上書き必要な領域が含まれる1ブロック
分のデータを消去し(ステップS305)、更に、ホス
トインタフェース部13を介してホストに割込みを上げ
てデータを要求する(ステップS306)。
In step S303, the memory unit 16
If it is impossible to overwrite the data in the buffer section, it is conventionally necessary to check whether or not it is possible to overwrite the data in the buffer section, and if this is not possible, it is necessary to erase the data in the buffer section. The data for one block including the area that needs to be overwritten in the memory unit 16 is transferred as it is and stored in the buffer unit 17 (step S304). After that, one block of data in the memory unit 16 including the area that needs to be overwritten is erased (step S305), and an interrupt is issued to the host via the host interface unit 13 to request the data (step S306). ..

【0033】ホストは、上記の割込みを受け付けると、
1ワードのデータをライトする(ステップS307)。
そして、プロセッサ部14は、ホストから送られてくる
データを、メモリ部16へ書込みを行う領域に合わせて
バッファ部17内の所定の領域に書き込む(ステップS
308)。ホストから必要なデータ数分のライト処理が
終了すると(ステップS309)、プロセッサ部14
は、バッファ部17の内容を転送し、メモリ部16内の
該当ブロックに格納する(ステップS310)。そし
て、ホストに対して終了を通知するため、割込みをホス
トインタフェース部13を介して上げる(ステップS3
11)。このように、ホストへのライト動作終了通知
は、メモリ部16にデータを書き込んでから実施するた
め、不揮発性記憶装置としての不揮発性を保つことがで
きる。
When the host receives the above interrupt,
Data of one word is written (step S307).
Then, the processor unit 14 writes the data sent from the host in a predetermined area in the buffer unit 17 in accordance with the area to be written in the memory unit 16 (step S
308). When the write processing for the required number of data from the host is completed (step S309), the processor unit 14
Transfers the content of the buffer unit 17 and stores it in the corresponding block in the memory unit 16 (step S310). Then, in order to notify the host of the end, an interrupt is raised via the host interface unit 13 (step S3
11). In this way, the write operation end notification to the host is performed after writing the data in the memory unit 16, and thus the non-volatility as the non-volatile storage device can be maintained.

【0034】また、ステップS303において、メモリ
部16への上書きが可能な場合は、従来と同様の図7に
示すステップに進むため、これからの動作については、
その説明を省略する。
If it is possible to overwrite the memory portion 16 in step S303, the process proceeds to the same step as shown in FIG. 7 as in the conventional case.
The description is omitted.

【0035】尚、上記第1の実施例では、バッファ部1
7を揮発性のメモリで構成したが、所定の単位量でリー
ド/ライトが可能なメモリ、例えばEEPROM等の1
バイト単位でリード/ライトが可能な不揮発性メモリで
構成してもよい。
In the first embodiment, the buffer unit 1
Although 7 is composed of a volatile memory, a memory that can be read / written in a predetermined unit amount, for example, 1 such as an EEPROM.
It may be constituted by a non-volatile memory capable of reading / writing in byte units.

【0036】次に、ディレクトリ部をデータの上書き可
能な不揮発性メモリで構成した第2の実施例を説明す
る。図11に、そのブロック図を示す。図に示す不揮発
性記憶装置21は、ホストインタフェース部23、プロ
セッサ部24、プロセッサメモリ部25、メモリ部2
6、バッファ部27、ディレクトリ部28、内部バス2
9から構成されている。また、2は、従来と同様のシス
テムバスである。ここで、上記各構成部の動作上の機能
は、第1の実施例と同様であるが、本実施例では、ディ
レクトリ部28がEEPROMで構成されている点を特
徴としている。
Next, a second embodiment in which the directory portion is composed of a non-volatile memory capable of overwriting data will be described. FIG. 11 shows a block diagram thereof. The nonvolatile storage device 21 shown in the figure includes a host interface unit 23, a processor unit 24, a processor memory unit 25, and a memory unit 2.
6, buffer unit 27, directory unit 28, internal bus 2
It is composed of 9. Further, 2 is a system bus similar to the conventional one. Here, the operational function of each of the above components is similar to that of the first embodiment, but this embodiment is characterized in that the directory unit 28 is composed of an EEPROM.

【0037】図12は、プロセッサ部24からみたディ
レクトリ部28とメモリ部26のメモリ空間を示す図で
ある。ここでは、従来のメモリ空間(図4)と同様に、
ディレクトリ部28のアドレスA28とメモリ部26の
アドレスA26は、プロセッサ部24からは、連続した
アドレスでアクセスすることが可能なよう構成されてい
る。また、メモリ部26とバッファ部27の容量は、図
3で示した従来と同様に構成されている。
FIG. 12 is a diagram showing the memory space of the directory unit 28 and the memory unit 26 as seen from the processor unit 24. Here, like the conventional memory space (Fig. 4),
The address A28 of the directory unit 28 and the address A26 of the memory unit 26 are configured so that the processor unit 24 can access them at consecutive addresses. The capacities of the memory unit 26 and the buffer unit 27 are the same as those of the conventional one shown in FIG.

【0038】次に、上記不揮発性記憶装置の動作を説明
する。 [リード動作]図13は、リード動作のフローチャート
であり、このフローチャートに沿って説明する。図示し
ないホストはリード動作を要求する場合、不揮発性記憶
装置21に対し、リードコマンド、リードデータ数、先
頭アドレスをシステムバス2を介して発行する。これに
より、ホストインタフェース部23は、前記のリードコ
マンド、リードデータ数、先頭アドレスを、ホストイン
タフェース部23内の図示しないコマンドレジスタ、デ
ータ数レジスタ、先頭アドレスレジスタにセットし、プ
ロセッサ部24に割込みを上げる。
Next, the operation of the nonvolatile memory device will be described. [Read Operation] FIG. 13 is a flowchart of the read operation, which will be described below. When a host (not shown) requests a read operation, it issues a read command, the number of read data, and a start address to the nonvolatile memory device 21 via the system bus 2. As a result, the host interface unit 23 sets the read command, the number of read data, and the start address in the command register, data number register, and start address register (not shown) in the host interface unit 23, and interrupts the processor unit 24. increase.

【0039】プロセッサ部24は、この割込みを受け付
けると、コマンドレジスタをリードし(ステップS40
1)、ホストがリードコマンドを発行したことを認識す
る。次にプロセッサ部24は、データ数レジスタと先頭
アドレスレジスタをリードし(ステップS402)、デ
ィレクトリを要求しているかデータを要求しているかを
認識する(ステップS403)。ステップS403にお
いて、ホストがディレクトリを要求している場合、プロ
セッサ部24はディレクトリ部28内の所定の領域から
1ワードのデータをリードし(ステップS404)、リ
ードしたデータをホストに転送するため、ホストインタ
フェース部23を介して割込みをホストに対して上げる
(ステップS405)。ホストはこの割込みを受け付け
ると、1ワードのデータをリードする(ステップS40
6)。必要なデータ数をホストに転送し終えると(ステ
ップS407)、プロセッサ部24はホストに対し、終
了を通知するため、割込みをホストインタフェース部2
3に対して行う(ステップS408)。
When the processor section 24 receives this interrupt, it reads the command register (step S40).
1) Recognize that the host has issued a read command. Next, the processor unit 24 reads the data number register and the head address register (step S402) and recognizes whether the directory is requested or the data is requested (step S403). When the host requests the directory in step S403, the processor unit 24 reads one word of data from a predetermined area in the directory unit 28 (step S404), and transfers the read data to the host. An interrupt is sent to the host via the interface unit 23 (step S405). When the host accepts this interrupt, it reads 1-word data (step S40).
6). When the required number of data has been transferred to the host (step S407), the processor unit 24 notifies the host of the end, and therefore an interrupt is issued to the host interface unit 2
3 is performed (step S408).

【0040】また、ステップS403において、ホスト
がデータを要求している場合の動作は、図5のステップ
S103からの動作と同様であるため、ここでの説明を
省略する。
The operation when the host requests data in step S403 is the same as the operation from step S103 in FIG. 5, and therefore the description thereof is omitted here.

【0041】[ライト動作]図14はライト動作のフロ
ーチャートである。この場合も、上記のリード動作と同
様に図示しないホストがライト動作を要求する場合、不
揮発性記憶装置21に対し、ライトコマンド、ライトデ
ータ数、先頭アドレスを発行する。ホストインタフェー
ス部23は、リード動作同様、ホストインタフェース部
23内の図示しないコマンドレジスタ、データ数レジス
タ、先頭アドレスレジスタに、これらライトコマンド、
ライトデータ数、先頭アドレスをセットし、プロセッサ
部24に割込みを上げる。プロセッサ部24は、割込み
を受け付けると、コマンドレジスタをリードし(ステッ
プS501)、ホストがライトコマンドを発行したこと
を認識する。次に、プロセッサ部24はデータ数レジス
タと先頭アドレスレジスタをリードし(ステップS50
2)、ディレクトリの書込みを要求しているのかデータ
の書込みを要求しているのかを認識する(ステップS5
03)。
[Write Operation] FIG. 14 is a flowchart of the write operation. Also in this case, when a host (not shown) requests a write operation as in the above read operation, the write command, the number of write data, and the start address are issued to the nonvolatile memory device 21. As with the read operation, the host interface unit 23 writes these write commands to the command register, data count register, and start address register (not shown) in the host interface unit 23.
The number of write data and the start address are set, and the processor 24 is interrupted. Upon receiving the interrupt, the processor unit 24 reads the command register (step S501) and recognizes that the host has issued the write command. Next, the processor unit 24 reads the data number register and the head address register (step S50).
2) Recognize whether a directory write request or a data write request is requested (step S5)
03).

【0042】ホストがディレクトリの書込みを要求して
いる場合、プロセッサ部24はホストインタフェース部
23を介してホストに割込みを上げてディレクトリ情報
をライトする(ステップS504)。ホストは、上記の
割込みを受け付けると、1ワードのディレクトリ情報を
ライトする(ステップS505)。そして、プロセッサ
部24は、ホストから送られてくるディレクトリを、デ
ィレクトリ部28内の所定の領域に書き込む(ステップ
S506)。ホストから必要なデータ数分のライト処理
が終了すると(ステップS507)、プロセッサ部24
はホストに対して終了を通知するため、割込みをホスト
インタフェース部23を介して上げる(ステップS50
8)。
When the host requests writing of the directory, the processor unit 24 raises an interrupt to the host via the host interface unit 23 and writes the directory information (step S504). Upon accepting the above interrupt, the host writes 1-word directory information (step S505). Then, the processor unit 24 writes the directory sent from the host in a predetermined area in the directory unit 28 (step S506). When the write processing for the required number of data from the host is completed (step S507), the processor unit 24
Notifies the host of the end, and raises an interrupt via the host interface unit 23 (step S50).
8).

【0043】尚、ステップS503において、ホストが
データ部への書込みを要求している場合は、従来技術の
図6のステップS203からの動作と同様であるため、
ここでの説明を省略する。
When the host requests writing to the data section in step S503, the operation is the same as that of step S203 in FIG. 6 of the prior art.
The description here is omitted.

【0044】また、上記第2の実施例において、アプリ
ケーションプログラムが、一般的なオペレーションシス
テムのファイルシステムを介して不揮発性記憶装置21
を使用する場合、その動作のシーケンスチャートは従来
の図8、図9と同様である。しかしながら、本実施例で
は、ディレクトリ部28がEEPROMで構成されてい
るため、1バイト単位の書換えが可能となり、ライト領
域がディレクトリ部28であった場合は、そのデータを
一旦バッファ部27に待避する必要はなく、そのままデ
ータ部におけるデータの格納場所や属性情報等をディレ
クトリ部28に書き込むことができる。
In the second embodiment, the application program is stored in the nonvolatile storage device 21 via the file system of a general operation system.
When using, the sequence chart of the operation is similar to that of the conventional FIG. 8 and FIG. However, in this embodiment, since the directory unit 28 is composed of the EEPROM, rewriting can be performed in 1-byte units, and when the write area is the directory unit 28, the data is temporarily saved in the buffer unit 27. There is no need, and the storage location of data in the data section, attribute information, etc. can be written in the directory section 28 as they are.

【0045】尚、上記第2の実施例では、ディレクトリ
部28をEEPROMで構成したが、これ以外の不揮発
性メモリであっても、所定の単位量、例えば1バイト単
位でリード/ライトが可能なものであれば同様の効果を
奏することができる。
In the second embodiment described above, the directory section 28 is composed of the EEPROM, but it is possible to read / write in a predetermined unit amount, for example, in a unit of 1 byte even in the case of a non-volatile memory other than this. The same effect can be obtained as long as it is one.

【0046】次に、格納アドレス部を設けた第3の実施
例を説明する。図15に、そのブロック図を示す。図に
示す不揮発性記憶装置31は、ホストインタフェース部
33、プロセッサ部34、プロセッサメモリ部35、メ
モリ部36、バッファ部37、格納アドレス部38、内
部バス39から構成されている。また、2は、従来と同
様のシステムバスである。
Next, a third embodiment provided with a storage address section will be described. FIG. 15 shows a block diagram thereof. The non-volatile storage device 31 shown in the figure includes a host interface unit 33, a processor unit 34, a processor memory unit 35, a memory unit 36, a buffer unit 37, a storage address unit 38, and an internal bus 39. Further, 2 is a system bus similar to the conventional one.

【0047】格納アドレス部38は、バッファ部37に
格納されているデータが、メモリ部36のどのブロック
であるかの情報を保持するためのメモリであり、不揮発
性メモリで構成されている。また、プロセッサ部34
は、転送制御手段34aを備えており、この転送制御手
段34aは、メモリ部36からバッファ部37にデータ
を転送する場合、格納アドレス部38に格納されている
アドレスを比較し、これが一致した場合は、バッファ部
37への転送(待避)を行わないように制御する機能を
有している。なお、その他の構成は、上記第1、第2の
実施例と同様であるため、ここでの説明は省略する。
The storage address section 38 is a memory for holding information on which block of the memory section 36 the data stored in the buffer section 37 is, and is composed of a non-volatile memory. In addition, the processor unit 34
Includes a transfer control means 34a. When transferring data from the memory section 36 to the buffer section 37, the transfer control means 34a compares the addresses stored in the storage address section 38, and if they match. Has a function of controlling so as not to transfer (save) to the buffer unit 37. The rest of the configuration is the same as that of the first and second embodiments, and the description thereof is omitted here.

【0048】次に、上記第3の実施例の不揮発性記憶装
置の動作を説明する。 [リード動作]ここで、本実施例のリード動作は、従来
の動作フローと同様である。即ち、その動作は図5に示
したフローチャートと同様であるため、ここでの説明は
省略する。
Next, the operation of the non-volatile memory device of the third embodiment will be described. [Read Operation] Here, the read operation of this embodiment is the same as the conventional operation flow. That is, since the operation is similar to that of the flowchart shown in FIG. 5, description thereof is omitted here.

【0049】[ライト動作]図16はライト動作のフロ
ーチャートである。図示しないホストがライト動作を要
求する場合、不揮発性記憶装置31に対し、ライトコマ
ンド、ライトデータ数、先頭アドレスを発行する。ホス
トインタフェース部33は、リード動作同様、ホストイ
ンタフェース部33内の図示しないコマンドレジスタ、
データ数レジスタ、先頭アドレスレジスタに、これらラ
イトコマンド、ライトデータ数、先頭アドレスをセット
し、プロセッサ部34に割込みを上げる。プロセッサ部
34は、割込みを受け付けると、コマンドレジスタをリ
ードし(ステップS601)、ホストがライトコマンド
を発行したことを認識する。次に、プロセッサ部34は
データ数レジスタと先頭アドレスレジスタをリードし
(ステップS602)、メモリ部36へ書込みを行う領
域を知り、メモリ部36内の該領域への上書きが可能か
否かを判断する(ステップS603)。
[Write Operation] FIG. 16 is a flowchart of the write operation. When a host (not shown) requests a write operation, the write command, the number of write data, and the start address are issued to the nonvolatile storage device 31. As with the read operation, the host interface unit 33 uses a command register (not shown) in the host interface unit 33,
The write command, the write data number, and the start address are set in the data number register and the start address register, and the processor unit 34 is interrupted. Upon accepting the interrupt, the processor unit 34 reads the command register (step S601) and recognizes that the host has issued the write command. Next, the processor unit 34 reads the data number register and the head address register (step S602), knows the area to write to the memory unit 36, and determines whether or not the area in the memory unit 36 can be overwritten. Yes (step S603).

【0050】ステップS603において、メモリ部36
への上書きが不可能な場合、次にプロセッサ部34は、
格納アドレス部38をリードし(ステップS604)、
メモリ部36内の上書きが必要な領域が含まれる1ブロ
ック分のデータがバッファ部37にあるか否かを判断す
る(ステップS605)。即ち、この判断は、上書きが
必要な領域が含まれる1ブロック分の先頭アドレスと格
納アドレスに格納されているアドレスとを比較すること
により行う。そしてこれが一致した場合はバッファ部3
7に該当データがあり、不一致の場合はバッファ部37
内に該当データがないと判断する。
In step S603, the memory unit 36
If the overwriting is impossible, the processor unit 34
The storage address portion 38 is read (step S604),
It is determined whether or not one block of data including an area in the memory section 36 that needs to be overwritten is present in the buffer section 37 (step S605). That is, this determination is made by comparing the start address of one block including the area that needs to be overwritten with the address stored in the storage address. If this matches, the buffer unit 3
If there is corresponding data in 7 and there is a mismatch, the buffer unit 37
It is judged that there is no corresponding data in.

【0051】ステップS605において、バッファ部3
7に該当データがある場合は、バッファ部37への転送
を行わず、後述するステップS611のホストへの割込
み処理に移行し、バッファ部37に該当データがない場
合は、バッファ部37への上書きが可能か否かを判断す
る(ステップS606)。ここで、バッファ部37への
上書きが可能な場合は何もせず、ステップS608に進
み、不可能な場合は、バッファ部37のデータを消去す
る(ステップS607)。そして、ステップS608に
進み、メモリ部36内の上書きが必要な領域が含まれる
1ブロック分のデータを転送し、バッファ部37に格納
する。但し、全データを転送してしまうと、後述するス
テップS613にて上書き処理ができないため、先頭ア
ドレスとデータ数情報をもとにステップS613にて書
き込みを行う領域に対しては、データ転送は行われな
い。更に、転送したブロックの先頭アドレスを格納アド
レス部38に格納する(ステップS609)。その後、
メモリ部36内の上書きが必要な領域が含まれる1ブロ
ック分のデータを消去し(ステップS610)、更に、
ホストインタフェース部33を介してホストに割込みを
上げてデータを要求する(ステップS611)。
In step S605, the buffer unit 3
If there is corresponding data in No. 7, the data is not transferred to the buffer unit 37, the process proceeds to the interrupt processing to the host in step S611 described later, and if there is no corresponding data in the buffer unit 37, the buffer unit 37 is overwritten. (Step S606). If the buffer unit 37 can be overwritten, nothing is done, and the process proceeds to step S608. If not, the data in the buffer unit 37 is erased (step S607). Then, the process proceeds to step S 608, and the data of one block including the area in the memory unit 36 that needs to be overwritten is transferred and stored in the buffer unit 37. However, if all the data has been transferred, overwrite processing cannot be performed in step S613, which will be described later. Therefore, data transfer is not performed for the area to be written in step S613 based on the start address and the number-of-data information. I don't know. Further, the head address of the transferred block is stored in the storage address section 38 (step S609). afterwards,
One block of data including an area that needs to be overwritten in the memory unit 36 is erased (step S610), and
An interrupt is sent to the host via the host interface unit 33 to request data (step S611).

【0052】ホストは、上記の割込みを受け付けると、
1ワードのデータをライトする(ステップS612)。
そして、プロセッサ部34は、ホストから送られてくる
データを、メモリ部36へ書込みを行う領域に合わせて
バッファ部37内の所定の領域に書き込む(ステップS
613)。ホストから必要なデータ数分のライト処理が
終了すると(ステップS614)、プロセッサ部34は
ホストに対して終了を通知するため、割込みをホストイ
ンタフェース部33を介して上げ(ステップS61
5)、バッファ部37の内容を転送し、メモリ部36内
の該当ブロックに格納する(ステップS616)。
When the host accepts the above interrupt,
Data of one word is written (step S612).
Then, the processor unit 34 writes the data sent from the host in a predetermined area in the buffer unit 37 in accordance with the area to be written in the memory unit 36 (step S
613). When the write process for the required number of data is completed from the host (step S614), the processor unit 34 notifies the host of the end, so an interrupt is generated via the host interface unit 33 (step S61).
5) The contents of the buffer unit 37 are transferred and stored in the corresponding block in the memory unit 36 (step S616).

【0053】また、ステップS603において、メモリ
部36への上書きが可能な場合は、従来の図7に示した
動作と同様であるため、ここでの説明は省略する。
Further, in step S603, when the memory section 36 can be overwritten, the operation is the same as the conventional operation shown in FIG. 7, and therefore the description thereof is omitted here.

【0054】尚、上記第3の実施例では、格納アドレス
部38を不揮発性メモリで構成したが、メモリ部36か
らバッファ部37にデータを転送する場合に、上述した
アドレスをチェックすることができる構成であれば、例
えば揮発性のメモリを用いることも可能である。
In the third embodiment, the storage address section 38 is composed of a non-volatile memory. However, when the data is transferred from the memory section 36 to the buffer section 37, the above address can be checked. With the configuration, for example, a volatile memory can be used.

【0055】次に、書換え回数認識部を設けた第4の実
施例を説明する。図17に、そのブロック図を示す。図
に示す不揮発性記憶装置41は、ホストインタフェース
部43、プロセッサ部44、プロセッサメモリ部45、
メモリ部46、バッファ部47、書換え回数認識部4
8、内部バス49から構成されている。また、2は、従
来と同様のシステムバスである。書換え回数認識部48
は、メモリ部46の書換え回数を格納するためのメモリ
であり、EEPROMで構成されている。また、その他
の構成は、上記第3実施例と同様であるため、ここでの
説明は省略する。
Next, a fourth embodiment provided with a rewriting frequency recognizing section will be described. FIG. 17 shows its block diagram. The nonvolatile storage device 41 shown in the figure includes a host interface unit 43, a processor unit 44, a processor memory unit 45,
Memory unit 46, buffer unit 47, rewrite frequency recognition unit 4
8 and an internal bus 49. Further, 2 is a system bus similar to the conventional one. Rewriting frequency recognition unit 48
Is a memory for storing the number of times of rewriting of the memory section 46, and is composed of an EEPROM. Further, the other structure is similar to that of the third embodiment, and therefore the description thereof is omitted here.

【0056】次に、上記第4の実施例の不揮発性記憶装
置の動作を説明する。 [リード動作]ここで、本実施例のリード動作は、従来
の動作フローと同様である。即ち、その動作は図5に示
したフローチャートと同様であるため、ここでの説明は
省略する。
Next, the operation of the nonvolatile memory device according to the fourth embodiment will be described. [Read Operation] Here, the read operation of this embodiment is the same as the conventional operation flow. That is, since the operation is similar to that of the flowchart shown in FIG. 5, description thereof is omitted here.

【0057】[ライト動作]図18はライト動作のフロ
ーチャートである。図示しないホストがライト動作を要
求する場合、不揮発性記憶装置41に対し、ライトコマ
ンド、ライトデータ数、先頭アドレスを発行する。ホス
トインタフェース部43は、リード動作同様、ホストイ
ンタフェース部43内の図示しないコマンドレジスタ、
データ数レジスタ、先頭アドレスレジスタに、これらラ
イトコマンド、ライトデータ数、先頭アドレスをセット
し、プロセッサ部44に割込みを上げる。プロセッサ部
44は、割込みを受け付けると、コマンドレジスタをリ
ードし(ステップS701)、ホストがライトコマンド
を発行したことを認識する。次に、プロセッサ部4はデ
ータ数レジスタと先頭アドレスレジスタをリードし(ス
テップS702)、メモリ部46へ書込みを行う領域を
知り、メモリ部46内の該領域への上書きが可能か否か
を判断する(ステップS703)。
[Write Operation] FIG. 18 is a flowchart of the write operation. When a host (not shown) requests a write operation, the write command, the number of write data, and the start address are issued to the nonvolatile storage device 41. As with the read operation, the host interface unit 43 uses a command register (not shown) in the host interface unit 43,
The write command, the number of write data, and the start address are set in the data count register and the start address register, and the processor 44 is interrupted. Upon receiving the interrupt, the processor unit 44 reads the command register (step S701) and recognizes that the host has issued the write command. Next, the processor unit 4 reads the data number register and the head address register (step S702), knows the area to be written to the memory unit 46, and determines whether or not the area in the memory unit 46 can be overwritten. Yes (step S703).

【0058】ステップS703において、メモリ部46
への上書きが不可能な場合は、更にバッファ部47への
上書きができるか否かを判断する(ステップS70
4)。ここで、バッファ部47への上書きが可能な場合
は何もせず、ステップS706に進み、不可能な場合
は、バッファ部47のデータを消去する(ステップS7
05)。そして、ステップS706に進み、メモリ部4
6内の上書きが必要な領域が含まれる1ブロック分のデ
ータを転送し、バッファ部47に格納する。但し、全デ
ータを転送してしまうと、後述するステップS711に
て上書き処理ができないため、先頭アドレスとデータ数
情報をもとにステップS711にて書き込みを行う領域
に対しては、データ転送は行わない。その後、メモリ部
46内の上書きが必要な領域が含まれる1ブロック分の
データを消去すると共に(ステップS707)、書換え
回数認識部48の該当ワードを更新する(ステップS7
08)。更に、ホストインタフェース部43を介してホ
ストに割込みを上げてデータを要求する(ステップS7
09)。
In step S703, the memory unit 46
If it is not possible to overwrite the buffer section 47, it is further determined whether or not the buffer section 47 can be overwritten (step S70).
4). If the buffer unit 47 can be overwritten, nothing is done, and the process proceeds to step S706. If not, the data in the buffer unit 47 is erased (step S7).
05). Then, in step S706, the memory unit 4
Data for one block including an area in 6 that needs to be overwritten is transferred and stored in the buffer unit 47. However, if all the data has been transferred, overwrite processing cannot be performed in step S711, which will be described later. Therefore, data transfer is not performed in the area to be written in step S711 based on the start address and the number-of-data information. Absent. After that, one block of data including an area that needs to be overwritten in the memory unit 46 is erased (step S707), and the corresponding word of the rewrite number recognition unit 48 is updated (step S7).
08). Furthermore, an interrupt is sent to the host via the host interface unit 43 to request data (step S7).
09).

【0059】ホストは、上記の割込みを受け付けると、
1ワードのデータをライトする(ステップS710)。
そして、プロセッサ部44は、ホストから送られてくる
データを、メモリ部46へ書込みを行う領域に合わせて
バッファ部47内の所定の領域に書き込む(ステップS
711)。ホストから必要なデータ数分のライト処理が
終了すると(ステップS712)、プロセッサ部44は
ホストに対して終了を通知するため、割込みをホストイ
ンタフェース部43を介して上げ(ステップS71
3)、バッファ部47の内容を転送し、メモリ部46内
の該当ブロックに格納する(ステップS714)。
When the host receives the above interrupt,
Data of one word is written (step S710).
Then, the processor unit 44 writes the data sent from the host in a predetermined area in the buffer unit 47 in accordance with the area to be written in the memory unit 46 (step S
711). When the write process for the required number of data is completed from the host (step S712), the processor unit 44 notifies the host of the end, so an interrupt is raised via the host interface unit 43 (step S71).
3) The contents of the buffer unit 47 are transferred and stored in the corresponding block in the memory unit 46 (step S714).

【0060】また、ステップS703において、メモリ
部6への上書きが可能な場合は、従来の図7に示した動
作と同様であるため、ここでの説明は省略する。
If it is possible to overwrite the memory portion 6 in step S703, the operation is the same as the conventional operation shown in FIG.

【0061】尚、上記第4の実施例では、書換え回数認
識部48をEEPROM等の不揮発性メモリで構成した
が、この場合も、例えば電源オフ時は書換え回数のデー
タを他の不揮発性メモリに格納するような構成を用いれ
ば、揮発性のメモリを用いることも可能である。
In the fourth embodiment, the rewriting frequency recognizing unit 48 is composed of a non-volatile memory such as an EEPROM, but in this case also, for example, when the power is off, the rewriting frequency data is stored in another non-volatile memory. It is also possible to use a volatile memory by using a configuration for storing.

【0062】[0062]

【発明の効果】以上説明したように、第1の発明の不揮
発性記憶装置によれば、バッファ部を所定の単位量でリ
ード/ライトが可能なメモリで構成したので、バッファ
部にデータを書き込む際のデータ消去処理が不要とな
り、データの書込みを高速化することができ、装置とし
ての性能向上を図ることができる。
As described above, according to the non-volatile memory device of the first aspect of the invention, since the buffer portion is composed of the memory capable of reading / writing in a predetermined unit amount, data is written in the buffer portion. In this case, the data erasing process is unnecessary, the data writing can be speeded up, and the performance of the device can be improved.

【0063】また、第2の発明の不揮発性記憶装置によ
れば、ディレクトリ部を所定の単位量でリード/ライト
が可能な不揮発性メモリで構成するようにしたので、デ
ィレクトリ部の消去処理、データ転送処理が不要とな
り、高速な処理が可能となる。
Further, according to the non-volatile memory device of the second aspect of the invention, since the directory portion is constituted by the non-volatile memory capable of reading / writing in a predetermined unit amount, the erasing process of the directory portion and the data Transfer processing becomes unnecessary, and high-speed processing becomes possible.

【0064】第3の発明の不揮発性記憶装置によれば、
メモリ部からバッファ部にデータを転送する場合、メモ
リ部とバッファ部の格納されているデータが一致するか
否かを判定し、一致した場合はその転送を行わないよう
にしたので、不揮発性記憶装置へのライト要求時におい
て、バッファ部に待避すべきデータが格納されている場
合はメモリ部からバッファ部への転送が不要となり、デ
ータ書込み処理の高速化を図ることができる。
According to the nonvolatile memory device of the third invention,
When data is transferred from the memory unit to the buffer unit, it is determined whether the data stored in the memory unit and the data stored in the buffer unit match, and if they match, the transfer is not performed. When data to be saved is stored in the buffer unit at the time of a write request to the device, transfer from the memory unit to the buffer unit is not necessary, and the speed of data writing processing can be increased.

【0065】第4の発明の不揮発性記憶装置によれば、
メモリ部の書換え回数の監視を行うようにしたので、そ
の書換え回数の管理が行え、不意に書込みができなくな
ってしまう等の問題を防止することができる。
According to the nonvolatile memory device of the fourth invention,
Since the number of times of rewriting of the memory unit is monitored, the number of times of rewriting can be managed, and problems such as unintentional unwriting can be prevented.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の不揮発性記憶装置における第1の実施
例のブロック図である。
FIG. 1 is a block diagram of a first embodiment of a nonvolatile memory device according to the present invention.

【図2】従来の不揮発性記憶装置のブロック図である。FIG. 2 is a block diagram of a conventional nonvolatile memory device.

【図3】メモリ部とバッファ部の容量の関係を示す図で
ある。
FIG. 3 is a diagram showing a relationship between capacities of a memory unit and a buffer unit.

【図4】従来のメモリ部の内部構成の説明図である。FIG. 4 is an explanatory diagram of an internal configuration of a conventional memory unit.

【図5】従来の不揮発性記憶装置におけるリード時の動
作フローチャートである。
FIG. 5 is an operation flowchart at the time of reading in the conventional nonvolatile memory device.

【図6】従来の不揮発性記憶装置におけるライト時の動
作フローチャートである。
FIG. 6 is an operation flowchart at the time of writing in the conventional nonvolatile memory device.

【図7】従来の不揮発性記憶装置におけるライト時のメ
モリ部への上書き可能な場合のフローチャートである。
FIG. 7 is a flow chart in a case where overwriting is possible in the memory unit at the time of writing in the conventional nonvolatile storage device.

【図8】従来の不揮発性記憶装置におけるファイルリー
ド時の動作フローチャートである。
FIG. 8 is an operation flowchart when reading a file in the conventional nonvolatile storage device.

【図9】従来の不揮発性記憶装置におけるファイルライ
ト時の動作フローチャートである。
FIG. 9 is an operation flowchart at the time of writing a file in the conventional nonvolatile storage device.

【図10】本発明の不揮発性記憶装置における第1の実
施例のライト時の動作フローチャートである。
FIG. 10 is a write operation flowchart of the first embodiment of the nonvolatile memory device of the present invention.

【図11】本発明の不揮発性記憶装置における第2の実
施例のブロック図である。
FIG. 11 is a block diagram of a second embodiment of the nonvolatile memory device of the present invention.

【図12】本発明の不揮発性記憶装置における第2の実
施例のメモリ空間の説明図である。
FIG. 12 is an explanatory diagram of a memory space of a second embodiment in the nonvolatile memory device of the present invention.

【図13】本発明の不揮発性記憶装置における第2の実
施例のリード時のフローチャートである。
FIG. 13 is a flowchart at the time of reading in the second embodiment of the nonvolatile memory device of the present invention.

【図14】本発明の不揮発性記憶装置における第2の実
施例のライト時のフローチャートである。
FIG. 14 is a flowchart at the time of writing in the second embodiment of the nonvolatile memory device of the present invention.

【図15】本発明の不揮発性記憶装置における第3の実
施例のブロック図である。
FIG. 15 is a block diagram of a third embodiment of the nonvolatile memory device of the present invention.

【図16】本発明の不揮発性記憶装置における第3の実
施例のライト時のフローチャートである。
FIG. 16 is a flowchart at the time of writing in the third embodiment of the nonvolatile memory device of the present invention.

【図17】本発明の不揮発性記憶装置における第4の実
施例のブロック図である。
FIG. 17 is a block diagram of a fourth embodiment of the nonvolatile memory device of the present invention.

【図18】本発明の不揮発性記憶装置における第4の実
施例のライト時のフローチャートである。
FIG. 18 is a flowchart at the time of writing in the fourth embodiment of the nonvolatile memory device of the present invention.

【符号の説明】[Explanation of symbols]

11、21、31、41 不揮発性記憶装置 14、24、34、44 プロセッサ部 16、26、36、46 メモリ部 17、37 バッファ部 28 ディレクトリ部 34a 転送制御手段 38 ディレクトリ部 48 書換え回数認識部 11, 21, 31, 41 Non-volatile storage device 14, 24, 34, 44 Processor unit 16, 26, 36, 46 Memory unit 17, 37 Buffer unit 28 Directory unit 34a Transfer control means 38 Directory unit 48 Rewriting number recognition unit

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 フラッシュEEPROMで構成され、デ
ータを格納するメモリ部と、 所定の単位量でリード/ライトが可能なメモリで構成さ
れ、前記メモリ部のデータを消去する場合に、そのデー
タを待避させるバッファ部とを備えたことを特徴とする
不揮発性記憶装置。
1. A flash EEPROM, comprising a memory section for storing data and a memory capable of reading / writing in a predetermined unit amount, and saving the data when erasing the data in the memory section. A non-volatile storage device comprising:
【請求項2】 フラッシュEEPROMで構成され、デ
ータを格納するメモリ部と、 所定の単位量でリード/ライトが可能な不揮発性メモリ
で構成され、前記メモリ部へのデータ格納情報を格納す
るディレクトリ部とを備えたことを特徴とする不揮発性
記憶装置。
2. A directory section configured by a flash EEPROM, which stores data, and a non-volatile memory capable of reading / writing in a predetermined unit amount, and storing data storage information in the memory section. A non-volatile memory device comprising:
【請求項3】 フラッシュEEPROMで構成され、デ
ータを格納するメモリ部と、 前記メモリ部のデータを消去する場合に、そのデータを
待避させるバッファ部と、 前記メモリ部から前記バッファ部にデータを転送する場
合、前記メモリ部と前記バッファ部の格納されているデ
ータが一致するか否かを判定し、一致した場合はその転
送を行わないよう制御する転送制御手段とを備えたこと
を特徴とする不揮発性記憶装置。
3. A memory section configured by a flash EEPROM for storing data, a buffer section for saving the data in the memory section when the data is erased, and a data transfer from the memory section to the buffer section In this case, it is provided with a transfer control unit that determines whether the data stored in the memory unit and the data stored in the buffer unit match, and if they match, controls not to perform the transfer. Non-volatile storage device.
【請求項4】 フラッシュEEPROMで構成され、デ
ータを格納するメモリ部と、 前記メモリ部へのデータ書換え回数を認識する書換え回
数認識部とを備えたことを特徴とする不揮発性記憶装
置。
4. A non-volatile storage device comprising a flash EEPROM and a memory section for storing data, and a rewrite number recognition section for recognizing the number of times data is rewritten into the memory section.
JP8147292A 1992-03-04 1992-03-04 Nonvolatile storage device Pending JPH05250884A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8147292A JPH05250884A (en) 1992-03-04 1992-03-04 Nonvolatile storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8147292A JPH05250884A (en) 1992-03-04 1992-03-04 Nonvolatile storage device

Publications (1)

Publication Number Publication Date
JPH05250884A true JPH05250884A (en) 1993-09-28

Family

ID=13747348

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8147292A Pending JPH05250884A (en) 1992-03-04 1992-03-04 Nonvolatile storage device

Country Status (1)

Country Link
JP (1) JPH05250884A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07244992A (en) * 1994-03-02 1995-09-19 Oki Electric Ind Co Ltd Semiconductor storage device and memory control method
JPH07319744A (en) * 1994-05-24 1995-12-08 Nec Corp File system using flush memory
US5699297A (en) * 1995-05-30 1997-12-16 Kabushiki Kaisha Toshiba Method of rewriting data in a microprocessor additionally provided with a flash memory

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07244992A (en) * 1994-03-02 1995-09-19 Oki Electric Ind Co Ltd Semiconductor storage device and memory control method
JPH07319744A (en) * 1994-05-24 1995-12-08 Nec Corp File system using flush memory
US5699297A (en) * 1995-05-30 1997-12-16 Kabushiki Kaisha Toshiba Method of rewriting data in a microprocessor additionally provided with a flash memory

Similar Documents

Publication Publication Date Title
US7552311B2 (en) Memory device with preread data management
US6459644B2 (en) Semiconductor memory device with block alignment function
KR100980309B1 (en) Host device and memory system
US5530827A (en) Data management system for programming-limited type semiconductor memory and IC memory card employing data save/erase process with flag assignment
KR100375533B1 (en) Data processing system, block erasing type memory device and memory medium storing program for controlling memory device
EP1769331B1 (en) Storage device and host apparatus
JP4611024B2 (en) Method and apparatus for grouping pages in a block
EP0522780B1 (en) Control method for a computer memory device
US7174440B2 (en) Method and apparatus for performing block caching in a non-volatile memory system
JP3197815B2 (en) Semiconductor memory device and control method thereof
US8327068B2 (en) Memory module, memory controller, nonvolatile storage, nonvolatile storage system, and memory read/write method
US8307172B2 (en) Memory system including memory controller and separately formatted nonvolatile memory to avoid “copy-involving write” during updating file data in the memory
US6366977B1 (en) Semiconductor storage device employing cluster unit data transfer scheme and data management method thereof
US20090282187A1 (en) Flash memory device capable of preventing read disturbance
JPWO2005103903A1 (en) Nonvolatile storage system
WO2005050453A1 (en) File recording device
JP2006285669A (en) Host apparatus
JPH08328762A (en) Semiconductor disk device and memory management method therefor
JPH05204561A (en) Semiconductor disk having flash memory as storage medium
JP3539752B2 (en) Semiconductor storage device and memory control method
JP2002163139A (en) Data management device and data management method using it
JP2000181784A (en) Non-volatile storage device which can be rewritten
JPH05250884A (en) Nonvolatile storage device
JP3784844B2 (en) Semiconductor memory device
JPH06162786A (en) Information processor using flash memory