Source: https://patents.google.com/patent/JPH07114500A/en
Timestamp: 2019-05-21 09:54:02
Document Index: 210847222

Matched Legal Cases: ['art 34', 'art 33', 'art 35', 'art 38', 'art 35', 'arts 35']

JPH07114500A - Nonvolatile memory device - Google Patents
JPH07114500A
JPH07114500A JP26120993A JP26120993A JPH07114500A JP H07114500 A JPH07114500 A JP H07114500A JP 26120993 A JP26120993 A JP 26120993A JP 26120993 A JP26120993 A JP 26120993A JP H07114500 A JPH07114500 A JP H07114500A
JP26120993A
1993-10-19 Application filed by Matsushita Electric Ind Co Ltd, 松下電器産業株式会社 filed Critical Matsushita Electric Ind Co Ltd
1993-10-19 Priority to JP26120993A priority Critical patent/JPH07114500A/en
1995-05-02 Publication of JPH07114500A publication Critical patent/JPH07114500A/en
PURPOSE: To perform the write of data on nonvolatile memory at a high speed by selecting and erasing a data block in flash memory in accordance with the data block in which the write bit of cache memory is set and no erased bit is set.
CONSTITUTION: A block selection part 34 selects the data block corresponding to an entry in which the write bit is set and no erased bit is set in the entries in which the data blocks that belong to a flash memory chip other than the one detected by an access chip detecting part 33 are stored. An erasure control part 35 performs data block erasure in a flash memory array 1 on the data block in selected flash memory, and sets the erased bit of erasure object entry on the cache memory 2. An arbitration part 38 arbitrates the copy back of an access control part, an operation of cache entry update. and the erasure operation of the erasure control part 35 when mis-read or mis-write occurs.
【産業上の利用分野】本発明はコンピュータシステムにおける、不揮発性メモリを用いた二次記憶装置に関する。 In the present invention is a computer system BACKGROUND OF THE relates secondary storage device using a nonvolatile memory.
【従来の技術】近年、コンピュータの二次記憶装置における技術革新が活発となり、データアクセスの高速化とデータ容量の大容量化が進んでいる。 In recent years, technological innovation in the secondary storage device of the computer becomes active, the speed of data access and the capacity of the data capacity is progressing. その中でも小形の二次記憶装置として電源を切った状態においてもデータを保持するという利点を有する不揮発性メモリが、使われるようになってきた。 Nonvolatile memory has the advantage of also holding the data in the power off as compact secondary storage device among them has come to be used.
【０００３】従来の不揮発性メモリ記憶装置に関する発明としては、例えば特開平０３−２５９４９８がある。 [0003] The invention relates to a conventional non-volatile memory storage device, for example, there is JP-A 03-259498.
この従来例の不揮発性メモリ記憶装置は、不揮発性メモリであるＥＥＰＲＯＭとその前段に通常のＦＩＦＯメモリを用いた一時記憶手段とを設けている。 The conventional non-volatile memory storage device is provided with a temporary storage means using conventional FIFO memory EEPROM and the previous stage is a non-volatile memory. このＥＥＰＲ The EEPR
ＯＭは、チップ単位又はブロック単位で消去可能なフラッシュメモリを用いている。 OM is using flash memory can be erased in the chip unit or a block unit. ＣＰＵから書き込む場合は、データを一旦一時記憶装置に書き込み、さらに別回路が一時記憶装置から読み出して自動的にＥＥＰＲＯＭ Automatically EEPROM when writing from CPU, the write data once the temporary storage device, a further circuit is read from the temporary memory
への書き込みを行う。 To write to. これによりＣＰＵが不揮発性メモリの書き込みに占有される時間を減少しようとしている。 Thus CPU is attempting to reduce the time occupied for writing the non-volatile memory. その際フラッシュメモリを用いているので、すでに存在するデータを消去してから書き込みを行なう必要がある。 Since that time are used flash memory, it is necessary to write to erase the data that already exists.
【発明が解決しようとする課題】しかしながら、上記の従来技術によれば、不揮発性メモリ記憶装置に対するデータの書き換えが発生してから消去、データ書き込みという手順を踏むために、不揮発性メモリ記憶装置自体に対するデータ書き換えが遅いという問題点を有していた。 However [0007] According to the prior art described above, deleted from the rewriting data to the non-volatile memory storage device is generated, in order to follow a procedure of data writing, the non-volatile memory storage device itself data rewriting for the had of the problem slow.
【０００５】ところで、ＦＩＦＯメモリを用いずに、キャッシュメモリを備えることにより高速化を図る構成も考えられる。 Meanwhile, without using a FIFO memory, is also conceivable configuration to increase the speed by a cache memory. この場合、キャッシュヒット時には、高速にアクセス出来るが、キャッシュミス発生時には、やはり消去、データ書き込みという手順を踏むこととなるので、データ書き込みが遅いという問題が残る。 In this case, the cache when hit, although access to high-speed, cache to miss the event, also erased, so so that the step on the procedure of data writing, a problem that the data writing is slow to leave. 本発明は上記の課題に鑑み、不揮発性メモリに対するデータの書き込みを高速に行うことができる不揮発性メモリ記憶装置を提供することを目的とする。 In view of the above problems, and an object thereof is to provide a non-volatile memory storage device that can perform high-speed writing of data to the nonvolatile memory.
【課題を解決するための手段】上記目的を達成するため、本発明は、ブロック単位のデータ消去が可能な複数のフラッシュメモリ素子を用いた不揮発性記憶装置であって、フラッシュメモリ中のデータブロックのうち、複数個のデータブロックと、フラッシュメモリ中の対応するデータブロックと内容が一致していないことを示す書き込みビットとを対応させて記憶するキャッシュメモリと、キャッシュメモリ中の各データブロック毎に、フラッシュメモリ中の対応するデータブロックが消去されたことを示す消去済みビットを保持する消去済みビット保持手段と、フラッシュメモリにおいてアクセス中のフラッシュメモリ素子を検出するアクセス対象検出手段と、 To achieve the above object, according to an aspect of the present invention is a nonvolatile storage device using a plurality of flash memory device capable of erasing data in units of blocks, data blocks in the flash memory of the plurality of data blocks, and a cache memory for storing in correspondence a write bit indicating that the corresponding data block and the contents of the flash memory does not match, for each data block in the cache memory the erased bit holding means for holding the erased bit indicating that the corresponding data block in the flash memory is erased, and the access target detecting means for detecting a flash memory device is being accessed in the flash memory,
アクセス対象検出手段により検出された以外のフラッシュメモリ素子に属するデータブロックでキャッシュメモリに格納されているデータブロックのうち、書き込みビットが立っていてかつ消去済みビットが立っていないデータブロックに対応するフラッシュメモリ中のデータブロック選択する選択手段と、選択手段により選択されたデータブロックを消去して対応する消去済みビットを立てる消去制御手段とを備えている。 Among the data blocks stored in the cache memory in the data blocks belonging to the flash memory device other than those detected by the access target detection unit, a flash corresponding to the data block to the write bit is not set and erased bits have standing It comprises selection means for data block selection in the memory, and erase control means sets an erased bit corresponding to erase selected by the selection means data block.
【０００７】また消去中のデータブロックの消去経過時間を記憶する領域を有する消去時間記憶手段を備え、前記消去制御手段は、消去開始時に消去時間記憶手段を参照して該当するデータブロックの消去経過時間が記憶されている場合には、消去時間を求めて消去を行い、また、既に消去中のブロックに対してアクセスが発生したときは、消去動作を中断して消去経過時間を消去時間記憶手段に書き込むことを特徴とする構成を備えていてもよい。 [0007] comprising a erasure time storage means having an area for storing the erase elapsed time of the data block being erased, said erase control means erases the course of the corresponding data block with reference to the erase time storage means at the time of erasing the start If the time is stored, erases seeking erasing time, also when the access occurs earlier with respect to block during erase, the erase time storage means erasing elapsed time interrupts the erase operation it may have a structure, wherein a write to.
【０００８】また、アクセス対象検出手段は、フラッシュメモリに対するアクセスが実行中であるタイミング信号を出力し、前記消去制御手段は、前記タイミング信号の出力期間中に消去動作を行うことを特徴とする構成を備えていてもよい。 Further, the access object detection means outputs a timing signal access to the flash memory is being executed, said erasure control means is characterized in that the erase operation is performed during the output period of said timing signal configurations it may be provided with a.
【作用】上記、本請求項１に係る発明の構成によれば、 [Action] above, according to the configuration of the invention according to the claim 1,
本発明は、ブロック単位のデータ消去が可能な複数のフラッシュメモリ素子を用いた不揮発性記憶装置である。 The present invention is a nonvolatile storage device using a plurality of flash memory device capable of erasing data in units of blocks.
フラッシュメモリにおいてアクセス中のフラッシュメモリ素子は、アクセス対象検出手段によって検出される。 Flash memory devices being accessed in the flash memory is detected by the access object detection means.
【００１０】アクセス対象検出手段により検出された以外のフラッシュメモリ素子に属するデータブロックでキャッシュメモリに格納されているデータブロックのうち、キャッシュメモリの書き込みビットが立っていて消去済みビット保持手段の消去済みビットが立っていないデータブロックに対応するフラッシュメモリ中のデータブロックは、選択手段によって選択される。 [0010] Among the data blocks stored in the cache memory at the access object detection means by the detected other than a flash memory device data belonging to the block, an erased erased bit holding means standing write bit in the cache memory is data block in the flash memory corresponding to the data block bit is not set, is selected by the selecting means.
【００１１】選択手段により選択されたデータブロックは、消去制御手段によって消去されて、そのデータブロックに対応する消去済みビットも消去手段によって立てられる。 [0011] Data blocks selected by the selection means, is erased by the erase control means, it is raised by the erased bits even erasing means corresponding to the data block. また請求項２では、消去中のデータブロックの消去経過時間は、消去時間記憶手段によって記憶される。 Further, in claim 2, erasing the elapsed time of the data block being erased it is stored by the erase time storage means.
【００１２】前記消去制御手段によって、消去開始時に消去時間記憶手段を参照して該当するデータブロックの消去経過時間が記憶されている場合には、消去時間を求めて消去が行われ、また、既に消去中のブロックに対してアクセスが発生したときは、消去動作が中断されて、 [0012] by the erase control unit, when erasing the elapsed time of the data block corresponding with reference to erasure time storage means at the time of erasing start is stored, erasing is performed by seeking the erase time and already when access to the block being erased is generated, the erase operation is suspended,
消去経過時間が消去時間記憶手段に書き込まれる。 Erasing the elapsed time is written to the erase time storage means. また請求項３では、フラッシュメモリに対するアクセスが実行中であるタイミング信号は、アクセス対象検出手段によって出力される。 Further in claim 3, access to the flash memory the timing signal is being executed is outputted by the access object detection means.
【００１３】前記タイミング信号の出力期間中に、前記消去制御手段によって、消去動作は、行われる。 [0013] During the output period of said timing signal, by the erasing control means, the erase operation is performed.
【実施例】以下、本発明の第１の実施例を図面に従い、 EXAMPLES Hereinafter, in accordance with the drawings a first embodiment of the present invention,
具体的に説明する。 It will be described in detail. 図１は本発明の第１の実施例における不揮発性メモリ記憶装置の構成図である。 Figure 1 is a block diagram of a non-volatile memory storage device in the first embodiment of the present invention. 図１において、１はフラッシュメモリアレイであり、データ幅８ビットでブロックサイズ１ｋＢの１６Ｍｂｉｔフラッシュメモリ８個で構成されている。 In Figure 1, 1 is a flash memory array, and a data width of 8 bits by 8 16Mbit flash memory block size 1kB. 不揮発性メモリであるこのフラッシュメモリではデータ消去は１ｋＢのブロック単位、データの読出し／書き込みはバイト単位で可能である。 Data erasing in the flash memory is a nonvolatile memory blocks of 1kB, data read / write is possible in bytes. ここで、１バイトデータの読出し時間は１００ナノ秒、消去済みブロックに対する１バイトデータの書込み時間は３マイクロ秒、１ｋＢブロックの消去時間は９ Here, one byte data read time 100 nanoseconds, writing time of one byte data to erased blocks 3 microseconds, the erase time of 1kB blocks 9
ミリ秒とする。 And milliseconds. この場合、フラッシュメモリの１ｋＢのデータブロック読出し時間は１００マイクロ秒、１ｋＢ In this case, the data block read time of flash memory 1kB is 100 microseconds, 1kB
の消去済みブロックに対するデータ書き込み時間は３ミリ秒となる。 Data writing time to erased block is 3 milliseconds.
【００１５】２はキャッシュメモリであり、データ部、 [0015] 2 is a cache memory, the data section,
アドレスタグ部、書込みビット、消去ビットからなる１ Address tag portion consists write bit, erasure bits 1
６個のエントリおよびアクセス制御部（図外）を有する。 Having six entries and access control unit (not shown). エントリーの中のデータ部は、フラシュメモリ中の任意の１ブロックのデータを記憶する。 Data portion in the entry stores the data in any one block in the flash memory. アドレスタグ部は１４ビットのブロックアドレスを記憶し、アドレスタグ部と同一エントリー中のデータ部がフラッシュメモリ中のどのブロックのデータを記憶しているかを示す。 Address tag unit stores the block address of 14 bits, indicating whether the data unit in the address tag section and the same entry stores the data of which blocks in the flash memory. 書き込みビットは、ＯＮで同一エントリー中のデータ部のデータがフラッシュメモリ中の対応するブロックのデータと一致していないことを示し、フラッシュメモリへのコピーバックが必要であることを意味する。 The write bit indicates that data in the data portion in the same entry in the ON does not match the data of the corresponding block in the flash memory, which means that copy back to the flash memory is required. ここでコピーバックとは、キャッシュメモリ２のデータ部に存在するデータを同一エントリー中のアドレスタグ部が示すフラッシュメモリのブロックアドレスにコピーする作業である。 Here copyback and is working to be copied to the block address of the flash memory indicated by the address tag section in the same entry data in the data portion of the cache memory 2. 消去済ビットは、ＯＮで、データ部に対応するフラッシュメモリ中のブロックが消去済であることを示し、フラッシュメモリへのコピーバックが可能であることを意味する。 Erased bit, in ON, indicates that the block in the flash memory corresponding to the data unit has already been erased, which means that it is possible to copy back to the flash memory. また１バイトデータの読出し／書込み時間は５０ナノ秒とする。 The read / write time of 1 byte data is 50 ns. 即ち、１ｋＢブロックの読出し／書込み時間は５０マイクロ秒である。 That is, the read / write time of 1kB blocks is 50 microseconds. アクセス制御部（図外）は、ＣＰＵからのアクセスに際して、キャッシュにヒット／ミスしているかを判定し、判定結果に応じてキャッシュメモリ２の読み出し／書き込み動作、及びエントリーのコピーバック、アップデート等の動作を制御する。 Access control unit (not shown), upon access from the CPU, to determine whether the hit / miss in the cache, the determination result of the read / write operations the cache memory 2 in accordance with, and entry of the copy-back, updates, etc. to control the operation. その際、キャッシュメモリ２に書き込みがあった場合には、書き込みビットをセットする。 At that time, when there is a write to the cache memory 2, it sets the write bit. 本実施例では、キャッシュメモリ２の制御方式としてコピーバック方式、エントリーの入れ替えには、ＬＲＵ方式を採用している。 In this embodiment, the copy back system as a control method of the cache memory 2, the replacement entry, employs the LRU scheme. ここで、キャッシュエントリーアップデートとは、フラッシュメモリアレイ１からキャッシュメモリ２ Here, the cache entry update, the cache memory 2 from the flash memory array 1
にデータブロックをコピーすることである。 And to copy the data blocks into.
【００１６】３は制御部であり、ブロックアドレスレジスタ３１、アドレス生成部３２、アクセスチップ検出部３３、ブロック選択部３４、消去制御部３５、調停部３ [0016] 3 denotes a controller, block address register 31, address generator 32, the access tip detecting unit 33, the block selection unit 34, the erase control unit 35, the arbitration unit 3
８から構成され、ＣＰＵとのデータ転送およびフラッシュメモリアレイ１並びにキャッシュメモリ２を制御する。 Consists 8, controls the data transfer and flash memory array 1 and the cache memory 2 of the CPU. ブロックアドレスレジスタ３１は、ＣＰＵから送られてくるブロックアドレスを格納する。 Block address register 31 stores the block address sent from the CPU.
【００１７】アドレス生成部３２は、１４ビットのブロックアドレスに１０ビットのブロック内アドレスオフセットを加算してフラッシュメモリアレイ１の２４ビットのバイトアドレスを生成する。 The address generator 32 generates a 24 byte address bits of the flash memory array 1 by adding block address offset of 10 bits to the block address of 14 bits. そのバイトアドレスは１ Its byte address 1
ｋＢ分のデータのバイトアドレスとして連続に生成される。 It is produced in a continuous as a byte address of kB of data. アクセスチップ検出部３３は、ブロックアドレスレジスタ３１の内容からホストがアクセスしようとしているブロックを含むフラッシュメモリチップを検出する。 Access chip detection unit 33 detects the flash memory chip including a block host from the content of the block address register 31 is attempting to access.
【００１８】ブロック選択部３４は、アクセスチップ検出部３３で検出されたチップ以外のフラッシュメモリチップに属するデータブロックを格納するエントリーの中で書き込みビットがＯＮかつ消去済みビットがＯＦＦのエントリーに対応するデータブロックを選択する。 The block selector 34, the write bit in the entry that stores the data block belonging to the access tip detected by the detector 33 the flash memory chips than chips ON and erased bit corresponds to the entry in the OFF to select a data block. 消去制御部３５は、ブロック選択部３４によって選択されたフラシュメモリ中のデータブロックに対してブロックアドレスと消去制御信号を送ってフラッシュメモリアレイ１のデータブロック消去を行う。 Erase control unit 35 performs data block erase of the flash memory array 1 sends an erase control signal and block address for the data block in the flash memory selected by the block selection unit 34. このとき、ブロックアドレス及び消去制御信号は、内部タイマー（図外）がカウントする消去時間（９ミリ秒）の間に有効に出力される。 In this case, the block address and erase control signal, an internal timer (not shown) is effectively output during the erase time counting (9 ms). 消去が終了すると、キャッシュメモリ２の消去対象エントリーの消去済みビットをＯＮにする。 When the erase operation is completed, the erased bit of the erased entry of cache memory 2 to ON. また各フラッシュメモリチップに対応する消去動作フラグ有し、消去動作中はＯＮとなる。 Also has the erase operation flag corresponding to each of the flash memory chips, during the erase operation is turned ON.
【００１９】調停部３８は、リードミス又はライトミス発生時に、アクセス制御部（図外）が決定したリプレース対象のエントリー中の書き込みビット、消去ビット、 The arbitration unit 38, when the read miss or write miss occurs, the write bit in the entry of the subject for replacement of the access control unit (not shown) has been determined, the erase bit,
及び消去制御部３５による消去動作フラグを参照して、 And with reference to the erase operation flag by the erase control unit 35,
アクセス制御部（図外）のコピーバック、キャッシュエントリーアップデートの動作と消去制御部３５の消去動作とを調停する。 Copy of the access control unit (not shown) back to arbitration and the erase operation of the operation and the erase control unit 35 of the cache entry updates.
【００２０】以上のように構成された本実施例の不揮発性メモリ記憶装置について、以下その動作を説明する。 [0020] The non-volatile memory storage device of the present embodiment constructed as described above, operation is described below.
ＣＰＵは不揮発性メモリ記憶装置に対してデータ読出し／書込み要求を行うため、１４ビットのブロックアドレスと読出し／書込み制御信号を不揮発性メモリ記憶装置の制御部３に送る。 The CPU to perform data read / write request to the nonvolatile memory storage device, sends a block address and a read / write control signal 14 bits to the control unit 3 of the non-volatile memory storage device. 制御部３にＣＰＵにより受けた１４ The control unit 3 receives the CPU 14
ビットのブロックアドレスをブロックアドレスレジスタ３１に設定する。 Set the block address bits to the block address register 31. アドレス生成部３２は、その１４ビットのブロックアドレスに１０ビットのブロック内アドレスオフセットを加算してフラッシュメモリアレイ１の２ Address generator 32, a second flash memory array 1 by adding block address offset of 10 bits to a block address of the 14 bit
４ビットのバイトアドレスを１ｋＢ分連続に生成する。 The 4-byte address bits to generate a 1kB minute continuous.
【００２１】ここで制御部３は、ＣＰＵからのデータ読出し／書き込み制御信号を受け取ると、キャッシュメモリ２にブロックアドレスを送出する。 The control unit 3 in this case, when receiving the data read / write control signal from the CPU, and sends the block address in the cache memory 2. キャッシュメモリ２の中のアクセス制御部（図外）はキャッシュメモリ２ Access control unit in the cache memory 2 (not shown) is a cache memory 2
にヒット／ミスしたかを判定する。 It determines whether the hit / miss. 説明の便宜上（１） For convenience of explanation (1)
キャッシュヒットしている場合、（２）キャッシュリードミスヒットが発生している場合、（３）キャッシュライトミスヒットが発生している場合、に分けて説明する。 If a cache hit, (2) if a cache read miss has occurred, will be described separately in the case, which occurs (3) cache write miss. ここでキャッシュミスとは、キャッシュメモリ２にＣＰＵが読み出し／書き込みをしようとするブロックがエントリーされていないことであり、キャッシュヒットとは、エントリーされていることである。 Here, the cache miss is that the block by the CPU in the cache memory 2 attempts to read / write is not an entry, a cache hit is that it is an entry.
【００２２】（１）キャッシュヒットの場合、目的とするデータブロックがキャッシュメモリ２に対して読出され又は書き込まれるので、高速な動作がおこなわれる。 [0022] (1) In the case of a cache hit, the data block of interest is written is read or the cache memory 2, a high-speed operation is performed.
これとともに、制御部３によるフラッシュメモリアレイ１のデータブロック消去動作が次のようにして行われる。 Along with this, the data block erase operation of the flash memory array 1 is carried out as follows by the control unit 3. アクセスチップ検出部３３は、ブロックアドレスレジスタ３１の内容から対応するフラッシュメモリチップを検出する。 Access chip detection unit 33 detects the flash memory chip corresponding from the contents of the block address register 31. ブロック選択部３４は、アクセスチップ検出部３３で検出されたチップ以外のフラッシュメモリチップに属するデータブロックを格納するエントリーのなかで、書き込みビットがＯＮ、かつ消去済みビットがＯ Block selector 34, among the entries storing the data blocks belonging to the access tip detector 33 flash memory chips other than the detected chip, the write bit ON, and the erased bit is O
ＦＦのエントリーに対応するデータブロックを選択する。 To select a data block corresponding to the entry of the FF. 消去制御部３５はブロック選択部３４が選択したデータブロックに対してブロックアドレスと消去制御信号を送ってフラッシュメモリアレイ１のデータブロック消去を行うとともに、消去動作フラグをＯＮにする。 Erase control unit 35 performs data block erase of the flash memory array 1 sends an erase control signal and block address for the data block block selection unit 34 has selected, turns ON the erase operation flag. 消去制御部３５はフラッシュメモリアレイ１の当該データブロックの消去が終了すると、消去動作フラグをＯＦＦにし、キャッシュメモリ２のアドレスタグ部の消去済みビットをＯＮにする。 When the erase control unit 35 erase of the data block in the flash memory array 1 ends, turn OFF the erase operation flag, the erased bits of the address tag portion of the cache memory 2 to ON.
【００２３】このようにして、キャッシュミスヒットが発生していない場合には、フラッシュメモリアレイ１に対するコピーバック、キャッシュエントリーアップデートが発生していないので、フラッシュメモリアレイ１に対する読出／書き込み動作と消去制御部３５の消去動作が競合しない、したがって消去制御部３５は、ＣＰＵからのキャッシュメモリへの読み出し書き込みとは無関係に、エントリーに対応するフラッシュメモリアレイ１のデータブロックの消去が可能である。 [0023] In this way, if a cache miss hit has not occurred, the copy back to the flash memory array 1, since the cache entry update has not occurred, the read / write operation and the erase control to the flash memory array 1 not erasing operation parts 35 are competing, the erase control unit 35 is therefore independent of the read writing to the cache memory from the CPU, it is possible to erase the data block flash memory array 1 corresponding to the entry.
【００２４】（２）キャッシュリードミスヒットの動作を図２を基に説明する。 [0024] (2) for explaining the operation of the cache read miss on the basis of Figure 2. この場合ＣＰＵの目的とするデータがキャッシュメモリ２中に存在しないので、コピーバックやキャッシュエントリーアップデートが必要となる。 Since the data for the purpose of this case, CPU does not exist in the cache memory 2, copy back and cache entry update is required. 調停部３８は、リプレース対象エントリーの書き込みビット及び消去済みビットを参照し、（ａ）書き込みビットがＯＮかつ消去済みビットがＯＦＦの場合（ｂ） Arbitration unit 38 refers to the write bit and an erased bit of replacement target entry, (a) if the write bit is ON and the erased bit is OFF (b)
書き込みビットがＯＮかつ消去済みビットがＯＮの場合（ｃ）書き込みビットがＯＦＦである場合のどれであるか判断する（ステップＳ２０１、ステップＳ２０２）。 If the write bit is ON and the erased bit is ON (c) write bit determines whether the one of the case is OFF (step S201, step S202).
【００２５】（ａ）この場合、リプレース対象エントリーの書き込みビットがＯＮなので、キャッシュメモリ２ [0025] (a) In this case, the write bit of the replacement target entry is so ON, cache memory 2
のデータブロックをフラッシュメモリアレイ１にコピーバックする必要がある。 It is necessary to copy-back data blocks in the flash memory array 1. かつ消去済みビットがＯＦＦなので、フラッシュメモリアレイ１の該当データブロックは、消去動作中かまだ消去されていないデータブロックである。 And since erased bit is OFF, the data block of the flash memory array 1 is a data block that has not been cleared yet or during the erase operation. 調停部３８は、消去制御部３５の消去動作フラグを参照し、消去動作フラグがＯＮであれば（ステップＳ２０６）、消去が終了するまで待った後（ステップＳ Arbitration unit 38 refers to the erasing operation flag of the erase control unit 35, if the erasing operation flag is ON (step S206), after the erasure has waited until the end (step S
２０７）、消去済みビットのチェックからやり直す（ステップＳ２０２）。 207), again from the check erased bit (step S202). 消去動作フラグがＯＦＦであれば（ステップＳ２０６）、まだ消去動作が開始されていないデータブロックであるので、調停部３８は消去制御部３５に消去を開始させる（ステップＳ２０８）。 If the erase operation flag is OFF (step S206), since the data blocks that have not yet been erase operation starts, the arbitration unit 38 initiates the erase erase control unit 35 (step S208). アクセス制御部（図外）は消去終了後コピーバック処理を開始させる。 Access control unit (not shown) initiates the copy back processing after the erase completion. コピーバックが終了後、アクセス制御部（図外）によりそのエントリーに読み込み対象データのキャッシュエントリアップデートと平行してＣＰＵへの対象データの読出制御が行われる（ステップＳ２０５）。 After copy back is finished, the read control of the object data to the CPU are performed in parallel access control unit by a (not shown) and cache entry update read target data to the entry (step S205). また、コピーバックや、キャッシュエントリーアップデートなどの動作と並行に、消去制御部３５は、フラッシュメモリアレイ１の別チップ内のデータブロックの消去を行う。 Moreover, and copy back, in parallel with the operation of such cache entry update, erase control unit 35 performs erasure of data blocks in another chip of the flash memory array 1. 以下その動作を説明する。 Following the operation thereof will be described.
【００２６】消去制御部３５独立に行われるフラッシュメモリアレイ１のデータブロック消去の動作を説明する。 [0026] To explain the operation of the data block erase of the flash memory array 1 is carried out to the erase control unit 35 independently. 制御部３のアクセスチップ検出部３３は、ブロックアドレスレジスタ３１の内容からフラッシュメモリアレイ１のデータの読みだし処理でアクセス対象のフラッシュメモリチップを検出する。 Access chip detector 33 of the controller 3 detects the accessed flash memory chip readout processing of the data in the flash memory array 1 from the contents of the block address register 31. 即ち、ブロックアドレスレジスタ３１に設定された１４ビットの上位３ビットを抽出することにより、８個のフラッシュメモリチップのいずれに含まれるブロックかを検出する。 That is, by extracting the higher-order 3 bits of the 14 bits that are set in the block address register 31, detects whether a block included in any of the eight flash memory chips. ブロック選択部３４は、アクセスチップ検出部３３で検出されたチップ以外のフラッシュメモリチップに属するデータブロックを格納するエントリーのなかで、書き込みビットがＯＮ Block selector 34, among the entries storing the data blocks belonging to the flash memory chips other than the detected chip by accessing the chip detection unit 33, the write bit is ON
のエントリーに対応するデータブロックを選択する。 To select a data block corresponding to the entry. 消去制御部３５はブロック選択部３４が選択したデータブロックに対してブロックアドレスと消去制御信号を送ってフラッシュメモリアレイ１のデータブロック消去を行う。 Erase control unit 35 performs data block erase of the flash memory array 1 sends an erase control signal and block address for the data block block selection unit 34 has selected. 消去が終了すると、キャッシュメモリ２の消去対象エントリの消去済みビットをＯＮにする。 When the erase operation is completed, the erased bits erased entry of the cache memory 2 to ON.
【００２７】（ｂ）この場合、リプレース対象エントリー書き込みビットがＯＮなので、キャッシュメモリ２のデータブロックをフラッシュメモリアレイ１にコピーバックする必要がある。 [0027] (b) In this case, since the subject for replacement entry write bit ON, it is necessary to copy back the data block in the cache memory 2 to the flash memory array 1. かつ消去済みビットがＯＮなので、フラッシュメモリアレイ１の該当データブロックは、消去済みである。 And since erased bit is ON, the data block of the flash memory array 1 is erased. 調停部３８は消去制御部３５の消去動作フラグを参照する（ステップＳ２０３）。 Arbitration unit 38 refers to the erasing operation flag of the erase control unit 35 (step S203). アクセス制御部（図外）は、消去動作フラグがＯＦＦであれば、直ちにコピーバック処理を開始する。 Access control unit (not shown) may erase operation flag if is OFF, immediately starts the copy back processing. 消去動作フラグがＯＮであれば、アクセス対象チップの他のデータブロックを消去中のため、消去が終了するまで待った後（ステップＳ２０４）、コピーバック処理を開始する。 If the erase operation flag is ON, since during erase other data blocks to be accessed chip, after the erasure has waited until the end (step S204), and starts the copy back processing.
コピーバックが終了後、そのエントリーに読み込み対象データのキャッシュエントリーアップデートと平行してＣＰＵへの対象データの読出制御を行う（ステップＳ２ After copy back is finished, it performs read control of the object data to the CPU in parallel with the cache entry update read target data to the entry (step S2
【００２８】（ｃ）書き込みビットがＯＦＦの場合。 [0028] (c) If the write bit is OFF. 調停部３８は、消去制御部の３５消去動作フラグを参照する（ステップＳ２０９）。 Arbitration unit 38 refers to the 35 erase operation flag of the erase control section (step S209). アクセス制御部（図外）は、 Access control unit (not shown) is,
消去動作フラグがＯＦＦであれば、直ちにコピーバック処理を開始する。 Erase operation flag if OFF, the immediately starts the copy back processing. 消去動作フラグがＯＮであれば、アクセス対象チップを消去中のため、消去が終了するまで待った後（ステップＳ２１０）キャッシュエントリーアップデートを行う。 If the erase operation flag is ON, since during erase access target chip, performs (step S210) cache entry update after erasing waited until the end. 平行してアクセス制御部（図外）は、 In parallel access control unit (not shown) is
ＣＰＵへの対象データの読出制御を行う（ステップＳ２ Performs read control of the object data to the CPU (step S2
【００２９】（３）キャッシュライトミスヒットの動作を図３を基に説明する。 [0029] (3) for explaining the operation of the cache write miss based on FIG. この場合ＣＰＵの目的とするデータがキャッシュメモリ２中に存在しない。 Data of interest in this case the CPU is not present in the cache memory 2. 調停部３８ The arbitration unit 38
は、書き込みビット及び消去済みビットを参照し、 Refers to the write bit and an erased bit,
（ａ）書き込みビットがＯＮかつ消去済みビットがＯＦ (A) the write bit is ON and the erased bits OF
Ｆの場合（ｂ）書き込みビットがＯＮかつ消去済みビットがＯＮの場合（ｃ）書き込みビットがＯＦＦである場合のどれであるか判断する（ステップＳ３０１、ステップＳ３０２）。 If the case of F (b) the write bit is ON and the erased bit is ON (c) write bit determines whether the one of the case is OFF (step S301, step S302).
【００３０】（ａ）この場合、書き込みビットがＯＮなので、キャッシュメモリ２のデータブロックをフラッシュメモリアレイ１にコピーバックする必要がある。 [0030] (a) In this case, since the write bit ON, it is necessary to copy back the data block in the cache memory 2 to the flash memory array 1. かつ消去済みビットがＯＦＦなので、フラッシュメモリアレイ１の該当データブロックは、消去動作中かまだ消去されていないデータブロックである。 And since erased bit is OFF, the data block of the flash memory array 1 is a data block that has not been cleared yet or during the erase operation. 調停部３８は、消去制御部３５の消去動作フラグを参照し、消去動作フラグがＯＮであれば（ステップＳ３０７）、消去が終了するまで待った後（ステップＳ３０８）、消去済みビットのチェックからやり直す（ステップＳ３０２）。 Arbitration unit 38 refers to the erasing operation flag of the erase control unit 35, if the erasing operation flag is ON (step S307), after the erasure has waited until the end (step S308), again the check erased bits ( step S302). 消去動作フラグがＯＦＦであれば、まだ消去動作が開始されていないデータブロックであるので、調停部３８は消去制御部３５に消去を開始させる（ステップＳ３０９）。 If the erase operation flag is OFF, since the data blocks that have not yet been erase operation starts, the arbitration unit 38 initiates the erase erase control unit 35 (step S309). アクセス制御部（図外）は消去終了後コピーバック処理を開始させる。 Access control unit (not shown) initiates the copy back processing after the erase completion. （ステップＳ３０５）。 (Step S305). コピーバックが終了後、ＣＰＵよりキャッシュメモリ２の該当エントリーに書き込み対象データデータブロックを書き込む、書き込み終了後、当エントリーの書き込みビットをＯＮに、消去済みビットをＯＦＦにリセットする（ステップＳ３０ After copy back is finished, writes the write target data data block into the corresponding entry of the cache memory 2 from CPU, after completion of writing, the ON the write bit of this entry, resets the erased bit to OFF (step S30
６）。 6). また、コピーバックなどの動作と並行に、消去制御部３５は、フラッシュメモリアレイ１の別チップ内のデータブロックの消去を行う。 Further, in parallel with the operation of such a copy-back, erase control unit 35 performs erasure of data blocks in another chip of the flash memory array 1.
【００３１】（ｂ）この場合、書き込みビットがＯＮなので、キャッシュメモリ２のデータブロックをフラッシュメモリアレイ１にコピーバックする必要がある。 [0031] (b) In this case, since the write bit ON, it is necessary to copy back the data block in the cache memory 2 to the flash memory array 1. かつ消去済みビットがＯＮなので、フラッシュメモリアレイ１の該当データブロックは、消去済みである。 And since erased bit is ON, the data block of the flash memory array 1 is erased. 調停部３ Arbitration unit 3
８は消去制御部３５の消去動作フラグを参照する（ステップＳ３０３）。 8 refers to the erasing operation flag of the erase control unit 35 (step S303). アクセス制御部（図外）は、消去動作フラグがＯＦＦであれば、直ちにコピーバック処理を開始する。 Access control unit (not shown) may erase operation flag if is OFF, immediately starts the copy back processing. 消去動作フラグがＯＮであれば、消去が終了するまで待った後（ステップＳ３０４）、コピーバック処理を開始する。 If the erase operation flag is ON, after the erasure has waited until the end (step S304), and starts the copy back processing. コピーバックが終了後、ＣＰＵよりキャッシュメモリ２の該当エントリーに書き込み対象データデータブロックを書き込む、書き込み終了後、当エントリーの書き込みビットをＯＮに、消去済みビットをＯＦ After copying back ends, CPU writes from the appropriate entry in the write target data data block in the cache memory 2, after the completion of writing, the ON the write bit of this entry, the erased bits OF
Ｆにリセットする（ステップＳ３０６）。 Reset to F (step S306).
【００３２】（ｃ）リプレース対象エントリーの書き込みビットがＯＦＦの場合、アクセス制御部（図外）は、 [0032] (c) if the write bit of the replacement target entry is OFF, the access control unit (not shown) is
ＣＰＵからの書き込み対象データデータブロックをキャッシュメモリ２の該当エントリーに書き込む。 Writes the write target data data blocks from CPU to the appropriate entry in the cache memory 2. 書き込み終了後、当エントリーの書き込みビットをＯＮに、消去済みビットをＯＦＦにリセットする（ステップＳ３０ After writing, the ON the write bit of this entry, it resets the erased bit to OFF (step S30
【００３３】以上のように動作することにより、本実施例によれば、アクセス制御部（図外）によるＣＰＵからのデータ読出し／書込み要求に対する処理と消去制御部３５によるフラッシュメモリアレイ１のデータブロックの消去とが並行してなされるので、キャシュミスが発生した場合でもＣＰＵのアクセスの高速化が図れる。 [0033] By operating as described above, according to this embodiment, the access control unit (not shown) in accordance the data block of the flash memory array 1 by the data read / processing for the write request and erase control unit 35 from the CPU since the erase is performed in parallel, thereby speeding up the CPU of access even if the cache miss occurs. 図４ Figure 4
は本発明の第２の実施例における不揮発性メモリ記憶装置の構成図である。 Is a block diagram of a non-volatile memory storage device in the second embodiment of the present invention. 同図は、第一の実施例の図１とで同じ符号を付した構成要素は、同じものであるので、説明を省略し、以下異なる点のみ説明する。 Drawing, components denoted by the same reference numerals in the Figure 1 of the first embodiment, since the same, not described, will be described only the differences below.
【００３４】異なる点は、制御部３において、消去状態管理部４６が新たに追加された点と、図１の消去制御部３５、調停部３８の代わりに消去制御部４５、調停部４ The difference is that in the control unit 3, and the point where the erase state management unit 46 is newly added, the erase control unit 35 of FIG. 1, the erase control unit 45 in place of the arbitration unit 38, the arbitration unit 4
８を備える点である。 It is that it includes a 8. 消去制御部４５は、基本的には図１の消去制御部３５と同じであり、次の点が異なる。 Erasure control section 45 is basically the same as the erase control unit 35 of FIG. 1, the following points are different. 消去動作中、調停部４８からの消去中断要求を受けたとき、消去動作を中断して、その時点の内部タイマー（図外）を参照して消去積算時間を書き込む。 During the erase operation, when receiving the erase suspend request from the arbitration unit 48 suspends the erase operation, writes the erasure integration time with reference to the internal timer (not shown) at that time.
【００３５】消去状態管理部４６は、消去中断が発生した場合に当該データブロックの中断までの積算消去時間を記録しておく。 The erasure state management unit 46, recording the cumulative erasing time until interruption of the data block if the erase suspend occurs. キャッシュメモリ２のエントリーの数と同数の記憶領域を持ち、各記憶領域はキャッシュメモリ２のエントリーに対応する。 Having as many storage areas of entry of the cache memory 2, each storage region corresponds to an entry of the cache memory 2. 調停部４８は、基本的には図１の調停部３８と同じであるが、コピーバック、アップデートと消去動作が競合したときに、消去制御部４ Arbitration unit 48 is basically the same as the arbitration unit 38 of FIG. 1, when a copy-back, updates the erase operation has been competitive, erase control unit 4
５に消去中断要求を送る点が異なる。 5 that sends the erase suspend request is different.
【００３６】以上のように構成された本実施例の不揮発性メモリ記憶装置について、以下その動作を説明する。 [0036] The non-volatile memory storage device of the present embodiment constructed as described above, operation is described below.
ただし、第１の実施例と同じものは省略する。 However, same as the first embodiment will be omitted. 図５をもとに、キャッシュリードミスヒットの動作を説明する。 Based on Figure 5, the operation of the cache read miss.
調停部４８は、リプレース対象エントリーの書き込みビット及び消去済みビットを参照し、（ａ）書き込みビットがＯＮかつ消去済みビットがＯＦＦの場合（ｂ）書き込みビットがＯＮかつ消去済みビットがＯＮの場合（ｃ）書き込みビットがＯＦＦである場合のどれであるか判断する（ステップＳ５０１、ステップＳ５０２）。 Arbitration section 48 refers to the write bit and an erased bit of replacement target entry, (a) if if the write bit is ON and the erased bit is OFF (b) the write bit is ON and the erased bit is ON ( c) write bit determines whether the one of the case is OFF (step S501, step S502).
【００３７】（ａ）リプレース対象エントリーの書き込みビットがＯＮかつ消去済みビットがＯＦＦの場合。 [0037] (a) If the write bit of the replacement target entry is ON and erased bit is OFF. 調停部４８は、消去制御部４５の消去動作フラグを参照し、消去動作フラグがＯＦＦである場合（ステップＳ５ Arbitration section 48 refers to the erasing operation flag of the erase control unit 45, when the erase operation flag is OFF (step S5
０６）、第１の実施例の場合と同様、消去制御部４５にコピーバック対象データブロックの消去を開始させる（ステップＳ５０７）。 06), as in the first embodiment, to initiate erasure of the copy-back target data block into the erase control unit 45 (step S507). 以下の動作は、図２の（ステップＳ２０８）と同様である。 The following operation is the same as FIG. 2 (step S208). 消去動作フラグがＯＮである場合（ステップＳ５０６）は、第１の実施例の場合と異なる。 If the erase operation flag is ON (step S506) it is different from that of the first embodiment. 調停部４８は、消去制御部４５が消去しているデータブロックと、アクセス制御部（図外）がコピーバックしようとしているコピーバック対象データブロックが、一致しているか判断する（ステップＳ５０８）。 Arbitration section 48, a data block erase control unit 45 is erased, copy-back target data block access control unit (not shown) is attempting to copy back, determines whether the match (step S508). もし一致していなければ、現在消去中のデータブロックは、コピーバック対象外のデータブロックであるため、 If they do not match if, the data block currently being erased is a data block out of the copy-back target,
調停部４８は、消去中断処理（ステップＳ５０９）をおこない、以下コピーバック対象ブロック消去（ステップＳ５０７）と同様である。 Arbitration section 48 performs erase suspend process (step S509), it is similar to the copy-back target block erase (step S507) follows. ここで消去中断処理は、調停部４８が消去制御部４５に消去中断要求を出し、消去制御部４５は消去中のフラッシュメモリアレイ１に対して消去中断を行ない、消去状態管理部４６に当該ブロックの中断までの消去時間を書くという動作である。 Here erase suspend process, the arbitration unit 48 issues an erase suspend request to the erasure control section 45, erasing control section 45 performs erase suspend the flash memory array 1 during erase, the block erase state management unit 46 of the operation of writing the erase time until the interruption. もし一致している場合（５０８）、コピーバック対象データブロックを消去中のため、コピーバックが終了後、アクセス制御部（図外）によりそのエントリーに読み込み対象データのキャッシュエントリーアップデートと平行してＣＰＵへの対象データの読出制御が行われる（ステップＳ５０５）。 If it matches if (508), for being erased copyback object data block, after the copy back is finished, in parallel with the cache entry update read target data to the entry by the access control unit (not shown) CPU read control of the object data is to (step S505).
【００３８】また、第１の実施例の場合同様、コピーバックやキャッシュエントリーアップデートなどの動作と並行に、消去制御部４５は、フラッシュメモリアレイ１ Further, similarly in the first embodiment, in parallel with the operation of such copy-back or a cache entry update, erase control unit 45, a flash memory array 1
の別チップ内のデータブロックの消去を行うが、一部動作が異なる。 Erasing data blocks in another chip, some operations are different. 以下、そのの異なる動作について説明する。 The following describes the the different operations. 消去制御部４５独立に行われるフラッシュメモリアレイ１のデータブロック消去の動作で、第１の実施例と異なるところだけ説明する。 In operation of the data block erase of the flash memory array 1 is carried out to the erase control unit 45 independently, it will be described only where it differs from the first embodiment. 消去制御部４５はブロック選択部３４が選択したデータブロックに対してブロックアドレスと消去制御信号を送ってフラッシュメモリアレイ１のデータブロック消去を行うまでは第１の実施例の場合と同様であるが、このとき、消去状態管理部４６に格納されている消去時間をもとに残り必要な時間だけ消去する点が異なる。 Erase control unit 45 although until the data block erase of the flash memory array 1 sends an erase control signal and block address for the data block block selection unit 34 has selected is the same as in the first embodiment At this time, the point of erasing only the remaining necessary time is different on the basis of the erasure time stored in the erasure state management unit 46. （ｂ）リプレース対象エントリーの書き込みビットがＯ (B) writing bits of the replacement target entry is O
Ｎかつ消去済みビットもＯＮの場合。 N and the case of the erased bits ON. 調停部４８は消去制御部４５の消去動作フラグを参照する（ステップＳ５ Arbitration section 48 refers to the erasing operation flag of the erase control unit 45 (step S5
０３）。 03). ここで第１の実施例の場合と異なり、消去動作フラグがＯＮであれば、現在消去中のデータブロックは、コピーバック対象外のデータブロックであるため、 Here unlike the first embodiment, if the erase operation flag is ON, since the data block currently being erased is a data block out of the copy-back target,
調停部４８は、消去中断処理（ステップＳ５０４）をおこない、以下コピーバック対象ブロック消去（ステップＳ５０５）と同様である。 Arbitration section 48 performs erase suspend process (step S504), it is similar to the copy-back target block erase (step S505) follows.
【００３９】（ｃ）リプレース対象エントリーの書き込みビットがＯＦＦの場合。 [0039] (c) If the write bit of the replacement target entry is OFF. 調停部４８は消去制御部４５ Arbitration unit 48 erase control unit 45
の消去動作フラグを参照する（ステップＳ５１１）。 Referring to erase operation flag (step S511). ここで第１の実施例の場合と異なり、消去動作フラグがＯ Here unlike the first embodiment, the erase operation flag O
Ｎであれば、調停部４８は、消去中断処理（ステップＳ If N, the arbitration unit 48, the erase suspend process (step S
５０４）をおこない、以下第１の実施例の（ステップＳ 504) carried out, following the first embodiment (step S
２１１）場合と同様である。 211) If is the same as. 次に、キャッシュライトミスヒットの動作を図６に示す。 Next, an operation of the cache write miss in FIG. この場合、第１の実施例のキャシュライトミスヒットの場合と異なる点を有する。 In this case, it has a difference from the case of the cache write miss in the first embodiment. その異なる点は、第２の実施例のキャッシュリードミスヒットの動作が第１の実施例のキャッシュリードミスヒットの動作と異なる点と同じであるので省略する。 Its difference is omitted because the operation of the cache read miss of the second embodiment is the same as the operation differs from the cache read miss of the first embodiment.
以上のように動作することにより、本実施例によれば、 By operating as described above, according to this embodiment,
アクセス制御部（図外）によるＣＰＵからのデータ読出し／書込み要求に対する処理と消去制御部３５によるフラッシュメモリアレイ１のデータブロックの消去とが並行してなされるので、キャシュミスが発生した場合でもＣＰＵのアクセスの高速化が図れる。 The access control unit and erasure of the data block flash memory array 1 by the data read / processing for the write request and erase control unit 35 from the CPU by (not shown) is made in parallel, CPU even if the cache miss occurs attained is a high-speed access.
【００４０】また、消去実行中であっても、消去を中断することができるので、消去終了待ちによるオーバーヘッドをなくすことができる。 [0040] In addition, even during the erase execution, it is possible to interrupt the erasing, it is possible to eliminate the overhead of erasing the step of waiting for the end. また、一旦消去を中断したブロックを再消去するときには、消去に必要な時間から、中断時にかけていた時間を引いた残りの時間、消去するだけでよく、消去にかける時間は必要最低限なですむ。 Live Also, once when re erase blocks interrupted erase, from the time required to erase the remaining time obtained by subtracting the time that has been subjected to a time of the interruption, it is sufficient to erase, time spent in the erasing is required minimum .
【００４１】図７は本発明の第３の実施例における不揮発性メモリ記憶装置の構成図である。 FIG. 7 is a block diagram of a non-volatile memory storage device in the third embodiment of the present invention. 同図は、第二の実施例の図４とで同じ符号を付した構成要素は、同じものであるので、説明を省略し、以下異なる点のみ説明する。 Drawing, components denoted by the same reference numerals in FIG. 4 of the second embodiment, since the same as, not described, will be described only the differences below. 異なる点は、制御部３において、組み合せ決定部７ The difference, in the control unit 3, the combination determining section 7
７が新たに追加された点と、図４の消去制御部４５の代わりに消去制御部７５を備える点である。 7 is a point that is newly added, a point having the erase control unit 75 in place of the erase control unit 45 of FIG.
【００４２】組み合せ決定部７７は、ブロック選択部３ The combination determining section 77, the block selection unit 3
４で選択したブロックについて、消去状態管理部４６の情報に基づき、３ブロックの組み合わせを決定する。 The block selected by 4, based on the information of the erasure state management unit 46, determines a combination of the three blocks. 消去制御部７５は、組み合わせ決定部７７で決定された３ Erase control unit 75, determined by the combination determining section 77 3
ブロックを同時に消去する点が、消去制御部４５と異なる。 Point erasing blocks simultaneously, different from the erase control unit 45. 以上のように構成された本実施例の不揮発性メモリ記憶装置について、以下その動作を説明する。 The configured non-volatile memory storage device of the present embodiment as described above, the operation thereof will be described below. ただし、 However,
第２の実施例と同じものは省略する。 Is the same as the second embodiment will be omitted.
【００４３】また、本実施例では、フラッシュメモリアレイ１のブロック消去をコピーバック処理と並行して行ない、しかも、複数の消去ブロックの組合せを制御することにより、消去に必要な電力消費と性能のバランスをとれるようにする。 [0043] Further, in the present embodiment performs in parallel with the copy back processing block erase of the flash memory array 1, moreover, by controlling the combination of a plurality of erase blocks, power consumption and performance required for erasure so that it can take the balance. 消去を行なうのはコピーバック処理のときだけにし、同時に消去するブロックの数を最大３ The erasing is only when the copy-back process, up to three the number of blocks to be erased at the same time
ブロックとすることによって、少ない消費電力で、性能向上をはかる。 By a block, with low power consumption, improving the performance. これは、コピーバック処理時に、コピーバック対象ブロックが消去済みである時は、直ちにコピーバック処理と消去可能ブロック消去の並列処理を行ない、コピーバック対象ブロックが消去済みでないときには、対象ブロック１つだけを消去し、対象ブロックの消去終了後、コピーバック処理と消去可能ブロック消去の並列処理を行なうことで実現する。 This is the time of the copy back processing when the copy-back target block is erased immediately performs parallel processing of erasable blocks erased copy back processing, only the block one object when copy-back target block has not been erased Clears, after erase end of the target block is realized by performing the parallel processing of erasable blocks erased copy back processing.
【００４４】キャッシュにヒットしている間は、ブロック消去の並列処理を行なわない。 [0044] While the cache is hit, not perform parallel processing of block erase. キャッシュメモリ２にヒットしなければ、ミスヒット処理を行う。 If you do not hit in the cache memory 2, performs a miss-hit processing. ミスヒット処理のながれは第２の実施例で説明したながれ（図５、 The flow of the mishit processing flow described in the second embodiment (FIG. 5,
図６）と同じであるので、ここでは、消去ブロックの数に上限を持たせることと、消去ブロックの組合せ決定動作について説明する。 Since FIG. 6) is the same as, here, the fact to have an upper limit on the number of erase blocks is described combination determining operation of the erase block.
【００４５】本実施例では、１ブロックのデータのコピーバック処理に３ミリ秒かかり、フラッシュメモリアレイ１上のデータブロックの消去に９ミリ秒を要する。 [0045] In this embodiment, it takes 3 ms to copy back processing of the data of one block, it takes 9 ms to erase the data blocks in the flash memory array 1. また、同時に消去するブロックは３ブロックである。 Further, the block to be erased simultaneously is three blocks. 消去状態管理部４６は、キャッシュメモリ２に格納されている各データブロックごとの消去状態情報を管理している。 Erasure state management unit 46 manages the erased state information for each data block stored in the cache memory 2. 消去状態情報として、これまでに消去を行なった時間を用いる。 As an erasing state information, using a time of performing an erase ever. すなわち、消去はコピーバックと並行しておこなうので、各ブロックの消去状態としては、０ミリ秒（未消去）、３ミリ秒、６ミリ秒、９ミリ秒（消去済み）の４状態である。 That is, since erase is carried out in parallel with the copy-back, as the erased state of each block, 0 milliseconds (unerased), 3 ms, 6 ms, a 4 state of 9 msec (erased).
【００４６】消去を行なうときには、制御部３のアクセスチップ検出部３３は、ブロックアドレスレジスタ３１ [0046] When erasing the access tip detecting unit 33 of the control unit 3, the block address register 31
の内容からフラッシュメモリアレイ１のデータの読みだし処理でアクセス対象のフラッシュメモリチップを検出する。 Detecting an access target of the flash memory chip readout processing of the data in the flash memory array 1 from the contents of the. 即ち、ブロックアドレスレジスタ３１に設定された１４ビットの上位３ビットを抽出することにより、８ That is, by extracting the higher-order 3 bits of the 14 bits that are set in the block address register 31, 8
個のフラッシュメモリチップのいずれに含まれるブロックかを検出する。 Detecting whether a block included in any number of flash memory chips. ブロック選択部３４は、アクセスチップ検出部３３で検出されたチップ以外のフラッシュメモリチップに属するデータブロックを格納するエントリーのなかで、書き込みビットがＯＮのエントリーに対応するデータブロックを選択する。 Block selector 34, among the entries storing the data blocks belonging to the flash memory chips other than the detected chip by accessing the chip detecting section 33, selects a data block write bit corresponds to an entry is ON. 組合せ決定部３７は、ブロック選択部３４で選択したブロックについて、消去状態管理部４６を検索し、３ブロックの組合せを決定する。 The combination determining unit 37, the block selected by the block selection unit 34, searches the erased state management unit 46, determines a combination of the three blocks. 組合せは、６ミリ秒のブロックから優先的に、なければ３ミリ秒、さらになければ０ミリ秒の優先順位で、 The combination is preferentially from 6 ms blocks, with priority unless if 3 ms, further there if 0 ms,
３ブロックを決定する。 To determine the three-block. すでに６ミリ秒消去したブロックをできるだけ多く組合せにすることができれば、コピーバック処理と並行した消去動作を行なうことにより、 If it is possible to as many combinations as possible already 6 ms erased blocks, by performing the erase operation in parallel with the copy back processing,
次回のコピーバック処理発生時に、消去済みエリアを確保できる可能性が高くなる。 During the next copy back processing occurs, it is likely to be secured erased area.
【００４７】以上のように本実施例によれば、コピーバック処理でキャッシュエントリをフラッシュメモリアレイ１に書き戻しているときに、アクセスしていないフラッシュメモリチップ内のデータブロックを消去することにし、同時に消去するブロックの数を３ブロック以下にして、かつ、その組合せを制御することにより、少ない消費電力で性能の高い二次記憶装置を実現することができる。 According to the present embodiment as described [0047] above, to be erased when it is written back to the cache entries in the copy back processing to the flash memory array 1, the data block in the flash memory chip that is not accessed, and the number of blocks to be erased at the same time three blocks or less, by controlling the combination, it is possible to achieve high-performance secondary storage device with low power consumption.
ＣＰＵからのデータ読出し／書込み要求に対する処理やキャッシュのエントリリプレースなどの処理と、フラッシュメモリのデータブロックの消去を並行して行うことができ、高速化が図れるという効果がある。 And processing such as entry replacement processing and a cache for data read / write request from the CPU, can be performed in parallel erasure of data blocks of the flash memory, there is an effect that high-speed processing.
【００４９】また、消去実行中であっても、消去を中断することができるので、消去終了待ちによるオーバーヘッドをなくすことができるという効果がある。 [0049] Also, even during erasure run, it is possible to interrupt the erasure, there is an effect that it is possible to eliminate the overhead of the erase end wait. さらに、 further,
複数の消去ブロックの組合せを制御することにより、消去に必要 な電力消費と性能のバランスがとれた記憶装置を実現することができるという効果がある。 By controlling the combination of a plurality of erase blocks, there is an effect that it is possible to realize a storage device that balances power consumption and performance required for erasure.
【図２】第１の実施例のキャッシュリードミスの処理を説明する動作フロー図である。 Figure 2 is an operational flowchart for explaining processing of cache read misses in the first embodiment.
【図３】第１の実施例のキャッシュライトミスの処理を説明する動作フロー図である。 3 is an operational flow diagram illustrating a process of a cache write miss in the first embodiment.
【図５】第２の実施例のキャッシュリードミスの処理を説明する動作フロー図である。 Figure 5 is an operational flowchart for explaining processing of cache read misses in the second embodiment.
【図６】第２の実施例のキャッシュライトミスの処理を説明する動作フロー図である。 6 is an operational flow diagram illustrating a process of a cache write miss in the second embodiment.
【図７】本発明の第３の実施例の構成を示すブロック図である。 7 is a block diagram showing the configuration of a third embodiment of the present invention.
１ フラッシュメモリアレイ ２ キャッシュメモリ ３ 制御部 ３１ ブロックアドレスレジスタ ３２ アドレス生成部 ３３ アクセスチップ検出部 ３４ ブロック選択部 ３５ 消去制御部 ３８ 調停部 ４５ 消去制御部 ４６ 消去状態管理部 ４８ 調停部 ７５ 消去制御部 ７７ 組合せ決定部 1 flash memory array 2 cache memory 3 the control unit 31 the block address register 32 the address generating unit 33 accesses the chip detector 34 block selection unit 35 erase control unit 38 arbitration section 45 erase control unit 46 erases the status management unit 48 arbitration unit 75 erase control unit 77 combination determining unit
【請求項１】 ブロック単位のデータ消去が可能な複数のフラッシュメモリ素子を用いた不揮発性記憶装置であって、 フラッシュメモリ中のデータブロックのうち、複数個のデータブロックと、フラッシュメモリ中の対応するデータブロックと内容が一致していないことを示す書き込みビットとを対応させて記憶するキャッシュメモリと、 キャッシュメモリ中の各データブロック毎に、フラッシュメモリ中の対応するデータブロックが消去されたことを示す消去済みビットを保持する消去済みビット保持手段と、 フラッシュメモリにおいてアクセス中のフラッシュメモリ素子を検出するアクセス対象検出手段と、 アクセス対象検出手段により検出された以外のフラッシュメモリ素子に属するデータブロックでキャッシュメモリに格納されて 1. A nonvolatile memory device using a plurality of flash memory device capable of erasing data in units of blocks, of the data blocks in the flash memory, a plurality of data blocks, corresponding in flash memory a cache memory for storing in correspondence a write bit indicating that the data block and the content does not match that, for each data block in the cache memory, that the corresponding data block in the flash memory is erased and erased bit holding means for holding the erased bits indicating an access object detection means for detecting a flash memory device is being accessed in the flash memory, the data blocks belonging to the flash memory device other than those detected by the access object detection means stored in the cache memory るデータブロックのうち、書き込みビットが立っていてかつ消去済みビットが立っていないデータブロックに対応するフラッシュメモリ中のデータブロック選択する選択手段と、 選択手段により選択されたデータブロックを消去して対応する消去済みビットを立てる消去制御手段とを備えたことを特徴とする不揮発性記憶装置。 That of the data block, and selecting means for data block selection in the flash memory corresponding to the data block write bit is not set and erased bits have standing, corresponding to erase selected by the selection means data block nonvolatile memory device characterized by comprising an erasing control means sets an erased bit.
【請求項２】 前記不揮発性記憶装置は、さらに、 消去中のデータブロックの消去経過時間を記憶する領域を有する消去時間記憶手段を備え、 前記消去制御手段は、消去開始時に消去時間記憶手段を参照して該当するデータブロックの消去経過時間が記憶されている場合には、消去時間を求めて消去を行い、また、既に消去中のブロックに対してアクセスが発生したときは、消去動作を中断して消去経過時間を消去時間記憶手段に書き込むことを特徴とする請求項１記載の不揮発性記憶装置。 Wherein said nonvolatile memory device further comprises an erase time storage means having an area for storing the erase elapsed time of the data block being erased, said erase control means, the erasure time storage means at the time of erasing the start when the erasure time elapsed referring to the relevant data block is stored, erases seeking erasing time, also, when the already accessing the block in the erase occurs, it interrupts the erase operation the device according to claim 1, wherein the writing the erase time storage means erasing used time by.
【請求項３】アクセス対象検出手段は、フラッシュメモリに対するアクセスが実行中であるタイミング信号を出力し、 前記消去制御手段は、前記タイミング信号の出力期間中に消去動作を行うことを特徴とする請求項１又は２記載の不揮発性記憶装置。 Wherein the access object detection means outputs a timing signal access to the flash memory is being executed, said erasure control means, wherein, characterized in that the erase operation is performed during the output period of said timing signal the nonvolatile memory device of claim 1 or 2, wherein.
JP26120993A 1993-10-19 1993-10-19 Nonvolatile memory device Pending JPH07114500A (en)
JP26120993A JPH07114500A (en) 1993-10-19 1993-10-19 Nonvolatile memory device
EP94307645A EP0649095A3 (en) 1993-10-19 1994-10-18 Nonvolatile storage with high speed data access.
JPH07114500A true JPH07114500A (en) 1995-05-02
ID=17358663
JP26120993A Pending JPH07114500A (en) 1993-10-19 1993-10-19 Nonvolatile memory device
EP (1) EP0649095A3 (en)
JP (1) JPH07114500A (en)
JP2007058840A (en) * 2005-07-29 2007-03-08 Sony Corp Storage device, computer system, and storage system
JP2009187062A (en) * 2008-02-01 2009-08-20 Fujitsu Ltd Information processor, control part for controlling data storage performed in information processor and control method for data storage
JP2012523642A (en) * 2009-04-17 2012-10-04 インディリンクス カンパニー リミテッド Controller using cache and disk management method and a method thereof
JP2017097861A (en) * 2015-11-09 2017-06-01 グーグル インコーポレイテッド Memory devices and methods
EP1467378B1 (en) * 2003-04-11 2007-07-18 EM Microelectronic-Marin SA Method for updating a non volatile memory
1993-10-19 JP JP26120993A patent/JPH07114500A/en active Pending
1994-10-18 EP EP94307645A patent/EP0649095A3/en not_active Withdrawn
US9183132B2 (en) 2005-07-29 2015-11-10 Sony Corporation Storage device, computer system, and storage system
US8838918B2 (en) 2008-02-01 2014-09-16 Fujitsu Limited Information processing apparatus and data backup method
US9514826B2 (en) 2014-10-30 2016-12-06 Winbond Electronics Corp. Programming method for NAND-type flash memory
EP0649095A2 (en) 1995-04-19
EP0649095A3 (en) 1996-04-17
EP0077451A2 (en) 1983-04-27 Storage subsystem including a bypassable cache