JP2007316779A - Nonvolatile memory system - Google Patents

Nonvolatile memory system Download PDF

Info

Publication number
JP2007316779A
JP2007316779A JP2006143442A JP2006143442A JP2007316779A JP 2007316779 A JP2007316779 A JP 2007316779A JP 2006143442 A JP2006143442 A JP 2006143442A JP 2006143442 A JP2006143442 A JP 2006143442A JP 2007316779 A JP2007316779 A JP 2007316779A
Authority
JP
Japan
Prior art keywords
operation information
nonvolatile memory
block
memory system
information
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
JP2006143442A
Other languages
Japanese (ja)
Inventor
Kazuo Mori
一夫 森
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2006143442A priority Critical patent/JP2007316779A/en
Publication of JP2007316779A publication Critical patent/JP2007316779A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To solve problems in utilizing only one piece of information such as the number of times of elimination in each block of a nonvolatile memory as reliability (degradation level) of each block, that one piece of held information itself may be eliminated by some accident, and reliability based on dispersion in characteristic of each block already existing in producing a memory, cannot be measured from the information indicating use performance such as the number of times of elimination. <P>SOLUTION: This nonvolatile memory system includes a nonvolatile memory device capable of eliminating data only by a unit of block, acquires plural kinds of operational information of the nonvolatile memory device by the unit of block, and holds the acquired operational information. That is, not single information such as the number of times of elimination but plural kinds of operational information are acquired on each block. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

ブロック単位でのみデータ消去可能な不揮発性メモリ装置を含む不揮発性メモリシステムに関する。   The present invention relates to a nonvolatile memory system including a nonvolatile memory device capable of erasing data only in units of blocks.

不揮発性メモリの一つとして、フラッシュメモリがあるが、フラッシュメモリはデータを書込む際に、ブロック単位でデータの消去を行なってから書込みを行なう。また、フラッシュメモリはデータの書込み回数に限界があり、一般的には10万回程度である。このため、例えば特定のブロックのみに書込みを繰り返すと、他のブロックの書込み回数が少ない場合であっても、メモリ全体としては寿命が尽きてしまうという問題があった。このような問題に鑑み、各ブロックにおける書込み回数等を管理し、メモリ全体に渡って各ブロックへの書込みが平均的に行なわれるように制御等することにより、メモリ全体の寿命を延ばすための技術が開示されている(例えば、特許文献1、特許文献2、特許文献3、特許文献4)。
特開平8−45287号公報 特開平9−306186号公報 特開平5−282880号公報 特開平5−46359号公報
One type of non-volatile memory is a flash memory. When data is written to the flash memory, data is erased in units of blocks and then written. In addition, the flash memory has a limit on the number of times data can be written, and is generally about 100,000 times. For this reason, for example, if writing is repeated only for a specific block, there is a problem that the entire memory will be exhausted even if the number of times of writing to other blocks is small. In view of such a problem, a technique for extending the lifetime of the entire memory by managing the number of times of writing in each block and controlling so that writing to each block is performed on the entire memory on average. Are disclosed (for example, Patent Document 1, Patent Document 2, Patent Document 3, and Patent Document 4).
JP-A-8-45287 Japanese Patent Laid-Open No. 9-306186 Japanese Patent Laid-Open No. 5-282880 Japanese Patent Laid-Open No. 5-46359

しかしながら、特許文献1、特許文献2、特許文献3、特許文献4においては、各ブロックにおける消去回数等の一の情報のみを各ブロックの信頼性(劣化度)として利用している。このような場合、保持している一の情報自体もなんらかのアクシデントにより消失してしまう可能性もある。また、メモリの生産時に既に存在している各ブロックの特性のばらつきを考慮した信頼性は、消去回数のような使用実績を示す情報からは測ることができない。   However, in Patent Document 1, Patent Document 2, Patent Document 3, and Patent Document 4, only one piece of information such as the number of erasures in each block is used as the reliability (degradation degree) of each block. In such a case, there is a possibility that the stored information itself may be lost due to some accident. In addition, the reliability in consideration of the variation in the characteristics of each block that already exists at the time of memory production cannot be measured from information indicating the use record such as the number of erasures.

そこで、本発明においては、ブロック単位でのみデータ消去可能な不揮発性メモリ装置を含む不揮発性メモリシステムであって、不揮発性メモリ装置の複数種の作動情報をブロック単位で取得し、取得した作動情報を保持することを特徴とする不揮発性メモリシステムを提案する。すなわち、各ブロックについて、消去回数のみというような単一の情報ではなく、複数種の作動情報を取得することにより、一の作動情報が消失したとしても他の作動情報を利用して各ブロックの信頼性を測ることが可能となる。また、作動情報として、データ読出し時の読出しエラーの訂正の成功、不成功を示すエラー訂正情報や、データの格納時間(書込み時間)、データの消去時間、データの消去回数、データの読出回数、データの格納回数(書込み回数)、等を取得するようになっていてもよい。NAND型フラッシュメモリは、データの読出しだけでも劣化するという特性があるため、読出回数は信頼性を測るための情報として有用である。また、フラッシュメモリの特性として、劣化してくるとデータの消去時間や書込み時間が長くなるという特性がある。また、データの消去時間や書込み時間等の情報は何らかのアクシデントにより消失してしまったとしてもその都度、計測し直すことが可能であるので、信頼性を測るための情報として利用することは有効である。また、メモリ生産時に既に存在している各ブロックの特性のばらつきをも考慮することも可能である(前述のように、消去回数等では考慮できない)。また、複数種の作動情報を不揮発性メモリ装置内に保持する場合には、複数のブロックに対してエラー訂正符号を含ませて分散して記録するようになっていてもよい。これにより、例えば一のブロックから作動情報が読み出せなくなったとしても、他のブロックに記録されている作動情報から各ブロックの信頼性を測ることが可能である。   Therefore, in the present invention, a nonvolatile memory system including a nonvolatile memory device capable of erasing data only in units of blocks, wherein a plurality of types of operation information of the nonvolatile memory devices are acquired in units of blocks, and the acquired operation information is acquired. A non-volatile memory system characterized by holding That is, for each block, by acquiring multiple types of operation information instead of single information such as only the number of times of erasure, even if one operation information is lost, other operation information is used to It becomes possible to measure reliability. In addition, as the operation information, error correction information indicating successful or unsuccessful read error correction at the time of data read, data storage time (write time), data erase time, data erase count, data read count, The number of times data is stored (number of times of writing), etc. may be acquired. Since the NAND flash memory has a characteristic that it deteriorates only by reading data, the number of times of reading is useful as information for measuring reliability. Further, as a characteristic of the flash memory, there is a characteristic that when it deteriorates, the data erasing time and the writing time become longer. Moreover, even if information such as data erasure time and write time is lost due to some accident, it can be measured again each time, so it is effective to use it as information for measuring reliability. is there. It is also possible to take into account variations in the characteristics of each block that already exist at the time of memory production (as described above, it cannot be taken into account in the number of erasures, etc.). Further, when a plurality of types of operation information are held in the nonvolatile memory device, error correction codes may be included in a plurality of blocks and distributedly recorded. Thereby, for example, even if the operation information cannot be read from one block, the reliability of each block can be measured from the operation information recorded in another block.

本発明の不揮発性メモリシステムによれば、複数種の作動情報をブロック単位で取得することにより、作動情報自体の消失にも対応し、かつ多面的に信頼性を測ることが可能である。また、データの消去時間や書込み時間を作動情報として取得することにより、作動情報自体が消失しても計測し直すことが可能であり、かつメモリ生産時における各ブロックの特性のばらつきをも考慮することが可能である。   According to the nonvolatile memory system of the present invention, by acquiring a plurality of types of operation information in units of blocks, it is possible to cope with the loss of the operation information itself and to measure the reliability in a multifaceted manner. In addition, by acquiring the data erasing time and writing time as operation information, it is possible to re-measure even if the operation information itself is lost, and also consider variations in the characteristics of each block during memory production It is possible.

本発明を実施するための最良の形態について図面を用いて詳細に説明する。なお、本発明はこれら実施の形態に何ら限定されるものではなく、その要旨を逸脱しない範囲において、種々なる態様で実施しうる。実施形態1は、主に請求項1、10、12などについて説明する。実施形態2は、主に請求項2、13などについて説明する。実施形態3は、主に請求項3、14などについて説明する。実施形態4は、主に請求項4などについて説明する。実施形態5は、主に請求項5、15などについて説明する。実施形態6は、主に請求項6、16などについて説明する。実施形態7は、主に請求項7などについて説明する。実施形態8は、主に請求項8などについて説明する。実施形態9は、主に請求項9などについて説明する。実施形態10は、主に請求項10、11、17などについて説明する。
(実施形態1)
The best mode for carrying out the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to these embodiments, and can be implemented in various modes without departing from the spirit of the present invention. The first embodiment will mainly describe claims 1, 10, and 12. The second embodiment will mainly describe claims 2 and 13. In the third embodiment, claims 3 and 14 will be mainly described. The fourth embodiment will mainly describe claim 4 and the like. In the fifth embodiment, claims 5 and 15 will be mainly described. In the sixth embodiment, claims 6 and 16 will be mainly described. The seventh embodiment will mainly describe claim 7 and the like. The eighth embodiment will mainly describe Claim 8 and the like. The ninth embodiment will mainly describe claim 9 and the like. The tenth embodiment will mainly describe claims 10, 11, 17 and the like.
(Embodiment 1)

(実施形態1:概要)本実施形態は、ブロック単位でのみデータ消去可能な不揮発性メモリ装置を含む不揮発性メモリシステムであって、不揮発性メモリ装置の複数種の作動情報をブロック単位で取得し、取得した作動情報を保持することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 1: Overview) This embodiment is a non-volatile memory system including a non-volatile memory device capable of erasing data only in block units, and acquires a plurality of types of operation information of the non-volatile memory device in block units. A non-volatile memory system that holds the obtained operation information will be described.

(実施形態1:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図1に例示する。不揮発性メモリシステムは、「作動情報取得部」(0101)と、「作動情報保持部」(0102)と、を有する。なお、不揮発性メモリシステムはブロック単位でのみデータ消去可能な不揮発性メモリ装置(図示しない)を含む。「不揮発性メモリ装置を含む」とは、不揮発性メモリシステムの一部として不揮発性メモリ装置が含まれていてもよいし、不揮発性メモリシステムが不揮発性メモリ装置そのものであってもよいという意味である。また、不揮発性メモリ装置は、例えばNAND型フラッシュメモリやNOA型フラッシュメモリ等が該当する。   (Embodiment 1: Configuration) FIG. 1 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (0101) and an “operation information holding unit” (0102). The nonvolatile memory system includes a nonvolatile memory device (not shown) that can erase data only in units of blocks. “Including non-volatile memory device” means that the non-volatile memory device may be included as part of the non-volatile memory system, or the non-volatile memory system may be the non-volatile memory device itself. is there. The nonvolatile memory device corresponds to, for example, a NAND flash memory or a NOA flash memory.

なお、以下に詳述する本発明の構成要素である各部は、ハードウェア、ソフトウェア、ハードウェアとソフトウェアの両方のいずれかによって構成される。例えば、これらを実現する一例として、コンピュータを利用する場合には、CPU、バス、メモリ、インタフェース、周辺装置などで構成されるハードウェアと、それらハードウェア上で実行可能なソフトウェアがある。ソフトウェアとしては、メモリ上に展開されたプログラムを順次実行することで、メモリ上のデータや、インタフェースを介して入力されるデータの加工、保存、出力などにより各部の機能が実現される。さらに具体的には、図34は一般的なコンピュータの構成を例示する図でありコンピュータが主にCPU(3410)、入出力インタフェース(I/O)(3420)、HDD(3430)、一時記憶メモリ(RAM)(3440)、ROM(3450)等から構成されることを示しているが、本件発明に係る不揮発性メモリシステムは図34と同様の構成により実現可能である。(明細書の全体を通じて同様である。)   Note that each unit, which is a component of the present invention described in detail below, is configured by either hardware, software, or both hardware and software. For example, as an example for realizing these, when a computer is used, there are hardware constituted by a CPU, a bus, a memory, an interface, a peripheral device, and the like, and software that can be executed on the hardware. As software, the functions of each unit are realized by sequentially executing a program developed on the memory, and processing, storing, and outputting data on the memory and data input via the interface. More specifically, FIG. 34 is a diagram illustrating the configuration of a general computer. The computer mainly includes a CPU (3410), an input / output interface (I / O) (3420), an HDD (3430), and a temporary storage memory. (RAM) (3440), ROM (3450), etc. are shown, but the nonvolatile memory system according to the present invention can be realized by the same configuration as that of FIG. (The same applies throughout the specification.)

「作動情報取得部」(0101)は、不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する機能を有する。「複数種」とは、二以上であることを意味する。「作動情報」とは、ブロックにおける消去、書込み、読出し等に関する情報を指す。具体的には、例えば、消去回数、書込み回数、読出し回数、消去時間、書込み時間、読出し時間、等が該当する。さらに、例えばデータ読出し時にエラー訂正を行なう場合には、エラー訂正の有無やエラー訂正の成否等であってもよい。   The “operation information acquisition unit” (0101) has a function of acquiring a plurality of types of operation information of the nonvolatile memory device in units of blocks. “Multiple species” means two or more. “Operation information” refers to information related to erasing, writing, reading, etc. in a block. Specifically, for example, the number of times of erasure, the number of times of writing, the number of times of reading, the erasing time, the writing time, the reading time, etc. are applicable. Further, for example, when error correction is performed at the time of data reading, the presence / absence of error correction or the success / failure of error correction may be used.

図2は、作動情報の具体例を示す。図2に例示した作動情報は、ブロック番号10のブロックは、消去回数が15700回、読出回数が22300回であることを表している。より具体的には、作動情報は、例えば「block_num=10、erase_count=15700、read_count=22300」というようなデータにより表される。ここで、「block_num」、「erase_count」、「read_count」は、それぞれブロック番号、消去回数、読出回数を表すプログラム上の変数である。また、図2においてはブロック番号10のブロックのみについての作動情報を示しているが、他の各ブロックについても同様に作動情報が取得されることとなる。作動情報の取得元としては、後述の管理部などが想定され、例えばメモリコントローラ等から取得する場合が想定される。   FIG. 2 shows a specific example of the operation information. The operation information illustrated in FIG. 2 indicates that the block of block number 10 has the number of erases of 15700 and the number of reads of 22300. More specifically, the operation information is represented by data such as “block_num = 10, erase_count = 15700, read_count = 22300”. Here, “block_num”, “erase_count”, and “read_count” are program variables representing the block number, the erase count, and the read count, respectively. In addition, in FIG. 2, the operation information for only the block of block number 10 is shown, but the operation information is acquired in the same manner for each of the other blocks. As the acquisition source of the operation information, a management unit to be described later is assumed. For example, the operation information is acquired from a memory controller or the like.

「作動情報保持部」(0102)は、取得した作動情報を保持する機能を有する。「取得した作動情報」とは、前記作動情報取得部(0101)にて取得した作動情報を指す。また、作動情報保持部は、不揮発性メモリ装置内に配置されていてもよい。すなわち、作動情報自体が本発明に係る不揮発性メモリ装置のブロックに記録されるようになっていてもよい。また、その場合には、一のブロックに複数の作動情報が記録されるようになっていてもよいし、複数のブロックに複数の作動情報が別々に記録されるようになっていてもよい。なお、複数のブロックに複数の作動情報が別々に記録されるようになっていると、あるブロックから作動情報が読み出せなくなったとしても他のブロックに記録されている作動情報を利用して各ブロックの信頼性を測る等が可能となるため、より安全である。   The “operation information holding unit” (0102) has a function of holding the acquired operation information. “Acquired operation information” refers to the operation information acquired by the operation information acquisition unit (0101). Further, the operation information holding unit may be disposed in the nonvolatile memory device. That is, the operation information itself may be recorded in the block of the nonvolatile memory device according to the present invention. In that case, a plurality of operation information may be recorded in one block, or a plurality of operation information may be separately recorded in a plurality of blocks. In addition, if a plurality of operation information is separately recorded in a plurality of blocks, even if the operation information cannot be read from a certain block, each operation information recorded in another block is used. Since it is possible to measure the reliability of the block, it is safer.

図3は、作動情報保持部にて保持されている作動情報の具体例を示す。「ブロック番号」は、作動情報が保持されているブロックであり、前述の変数block_numで示されるブロック番号である。また、「消去回数」は、前述の変数erase_countで示される消去回数であり、「読出回数」は、前述の変数read_countで示される読出回数である。作動情報保持部は、例えばこのような情報がデータベース等としてRAMやHDD等の所定の記憶領域に格納されている。   FIG. 3 shows a specific example of the operation information held in the operation information holding unit. The “block number” is a block in which operation information is held, and is a block number indicated by the aforementioned variable block_num. The “erase count” is the erase count indicated by the variable erase_count, and the “read count” is the read count indicated by the variable read_count. In the operation information holding unit, for example, such information is stored as a database or the like in a predetermined storage area such as a RAM or an HDD.

(実施形態1:処理の流れ)図4は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Embodiment 1: Process Flow) FIG. 4 illustrates a flowchart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS0401において不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する。この処理は、主に作動情報取得部によって実行される。次に、ステップS0402において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。   First, in step S0401, plural types of operation information of the nonvolatile memory device are acquired in units of blocks. This process is mainly executed by the operation information acquisition unit. Next, the operation information acquired in step S0402 is held. This process is mainly executed by the operation information holding unit.

なお、図4のフロー図は、計算機に実行させるプログラムの処理フロー図とみなすことも可能である。さらに、このようなプログラムをフレキシブルディスク等の媒体に記録することも可能である。(明細書の全体を通じて同様である。)   Note that the flowchart of FIG. 4 can also be regarded as a processing flowchart of a program executed by a computer. Further, such a program can be recorded on a medium such as a flexible disk. (The same applies throughout the specification.)

(実施形態1:詳細な具体例)図36は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(3601)と作動情報保持部(3602)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば作動情報取得部(3601)は制御回路(3603)から作動情報を取得するようになっていてもよい。また、メモリセルアレイ(3604)を作動情報保持部として利用するようになっていてもよい。   (Embodiment 1: Detailed Specific Example) FIG. 36 shows a case where an operation information acquisition unit (3601) and an operation information holding unit (3602) are configured in the memory in addition to the configuration of a general flash memory. FIG. In such a case, for example, the operation information acquisition unit (3601) may acquire operation information from the control circuit (3603). Further, the memory cell array (3604) may be used as an operation information holding unit.

(実施形態1:効果)本実施形態に係る不揮発性メモリシステムは、不揮発性メモリ装置の複数種の作動情報を取得し、保持することができるので、例えば一の作動情報が何らかのアクシデントにより消失等してしまったとしても、他の作動情報を利用して、例えば各ブロックの信頼性を測ることが可能である。また、複数種の作動情報を利用することによって、より多面的に信頼性を測ることができる。
(実施形態2)
(Embodiment 1: Effect) Since the nonvolatile memory system according to this embodiment can acquire and hold a plurality of types of operation information of the nonvolatile memory device, for example, one operation information is lost due to some accident, etc. Even if it does, it is possible to measure the reliability of each block, for example, using other operation information. Further, by using a plurality of types of operation information, it is possible to measure the reliability in a multifaceted manner.
(Embodiment 2)

(実施形態2:概要)本実施形態は、複数の作動情報を利用してブロック単位の信頼性情報を生成することが可能な不揮発性メモリシステムについて説明する。   (Embodiment 2: Overview) In this embodiment, a nonvolatile memory system capable of generating block-unit reliability information using a plurality of operation information will be described.

(実施形態2:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図5に例示する。不揮発性メモリシステムは、「作動情報取得部」(0501)と、「作動情報保持部」(0502)と、「信頼性情報生成部」(0503)と、を有する。   (Embodiment 2: Configuration) FIG. 5 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (0501), an “operation information holding unit” (0502), and a “reliability information generation unit” (0503).

「信頼性情報生成部」(0503)は、複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する機能を有する。「複数の作動情報」とは、前記作動情報保持部(0502)にて保持されている作動情報が該当する。「ブロック単位の信頼性情報を生成する」とは、ブロックごとに信頼性情報を生成することを意味する。また、「信頼性情報」とは、各ブロックの信頼性(劣化度)を表す情報であり、具体的には、例えば信頼度のような数値で表されるものであってもよいし、信頼度ランクのようにレベルで表されるものであってもよい。「複数の作動情報をパラメータとした計算」とは、例えば、複数の作動情報をパラメータとした計算式によって信頼度を算出する場合や、各作動情報に対して値に応じたランクを付与し、付与された各作動情報のランクを加味して該当ブロックの信頼度ランクを決定する場合等が該当する。   The “reliability information generation unit” (0503) has a function of generating block-unit reliability information by calculation using a plurality of operation information as parameters. The “plurality of operation information” corresponds to the operation information held in the operation information holding unit (0502). “Generate reliability information in units of blocks” means to generate reliability information for each block. The “reliability information” is information indicating the reliability (degradation degree) of each block, and specifically, may be expressed by a numerical value such as reliability, for example. It may be represented by a level such as a degree rank. "Calculation using a plurality of operation information as parameters" means, for example, when calculating reliability by a calculation formula using a plurality of operation information as parameters, or assigning a rank according to the value for each operation information, This applies to the case where the reliability rank of the corresponding block is determined in consideration of the assigned rank of each operation information.

図6は、信頼性情報生成部において信頼性情報として信頼度を算出する場合を例示する。まず、作動情報保持部(0601)においては、図3に例示した作動情報と同じ作動情報(0603)が保持されているとする。また、信頼性情報生成部(0602)において、信頼度を算出するための計算式として、消去回数と読出回数をパラメータとして、「信頼度=消去回数×0.8+読出回数×0.2」という計算式が予め決められていたとする。すると、例えばブロック番号10では、消去回数が15700、読出回数が22300、であるので、15700×0.8+22300×0.2=17020、と計算され、ブロック番号10のブロックの信頼度は17020であると算出される。他のブロックについても同様である(0604)。   FIG. 6 illustrates a case where the reliability information generation unit calculates the reliability as the reliability information. First, it is assumed that the operation information holding unit (0601) holds the same operation information (0603) as the operation information illustrated in FIG. In the reliability information generation unit (0602), as a calculation formula for calculating the reliability, the number of times of erasure and the number of times of reading are used as parameters, and “reliability = number of times of erasure × 0.8 + number of times of reading × 0.2” Assume that the calculation formula is determined in advance. Then, for example, in block number 10, since the number of erasures is 15700 and the number of readings is 22300, 15700 × 0.8 + 22300 × 0.2 = 172020 is calculated, and the reliability of the block of block number 10 is 17020. Is calculated. The same applies to the other blocks (0604).

図7は、信頼性情報生成部において信頼性情報として信頼度ランクを決定する場合を例示する。図6と同様に、作動情報保持部(図示しない)においては、図3に例示した作動情報と同じ作動情報が保持されているとする。また、信頼性情報生成部において消去回数と読出回数に対して与えるランクとして、0回以上1万回未満の場合はランク1、1万回以上3万回未満の場合はランク2、3万回以上5万回未満の場合はランク3、5万回以上7万回未満の場合はランク4、7万回以上の場合はランク5、と予め決められているとする(0701)。すなわち、ランク1が一番信頼度が高く、ランク5が一番信頼度が低いということである。また、消去回数と読出回数のランクのうち信頼度の低いほうのランクを該当ブロックの信頼度ランクとして決定することとする。この場合、例えばブロック番号11では、消去回数が53100であるため消去回数のランクはランク4、読出回数は75000であるためランク5、と決定される。また、消去回数のランク4と読出回数のランク5というレベルにより、ブロック番号11のブロックの信頼度ランクはランク5と決定される(0702)。   FIG. 7 illustrates a case where a reliability rank is determined as reliability information in the reliability information generation unit. Similarly to FIG. 6, it is assumed that the operation information holding unit (not shown) holds the same operation information as the operation information illustrated in FIG. 3. Further, the rank given to the erase count and the read count in the reliability information generation unit is rank 1 when 0 or more and less than 10,000 times, rank 2 or 30,000 when it is 10,000 or more and less than 30,000 times If the number is less than 50,000 times, rank 3 is determined in advance as rank 3, 50,000 times or more and less than 70,000 times, rank 4 and 70,000 times or more are determined as rank 5 (0701). That is, rank 1 has the highest reliability and rank 5 has the lowest reliability. Further, the rank with the lower reliability of the ranks of the erase count and the read count is determined as the reliability rank of the corresponding block. In this case, for example, in block number 11, the erase count is 53100, so the rank of the erase count is determined as rank 4, and the read count is determined as 75,000. Further, the reliability rank of the block with the block number 11 is determined to be rank 5 based on the rank of the erase count of 4 and the rank of the read count of 5 (0702).

また、信頼性情報生成部の具体的な処理としては、例えば作動情報保持部においてデータベース等としてRAMやHDD等の所定の記憶領域に格納されている作動情報を読出し、さらに、例えば図6に例示したような計算式をRAMやHDD等の所定の記憶領域から読出す。読出した計算式に応じて、読出した作動情報により信頼度を算出し、算出した信頼度をRAMやHDD等の所定の記憶領域に格納する。また、信頼性情報生成部はこのような処理をCPUに実行させるためのプログラムを含んでいてもよい。   Further, as a specific process of the reliability information generation unit, for example, operation information stored in a predetermined storage area such as a RAM or HDD is read out as a database or the like in an operation information holding unit, and further illustrated in FIG. Such a calculation formula is read from a predetermined storage area such as a RAM or HDD. In accordance with the read calculation formula, the reliability is calculated from the read operation information, and the calculated reliability is stored in a predetermined storage area such as a RAM or HDD. In addition, the reliability information generation unit may include a program for causing the CPU to execute such processing.

(実施形態2:処理の流れ)図8は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Embodiment 2: Process Flow) FIG. 8 illustrates a flowchart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS0801において不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する。この処理は、主に作動情報取得部によって実行される。次に、ステップS0802において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS0803において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。   First, in step S0801, a plurality of types of operation information of the nonvolatile memory device are acquired in units of blocks. This process is mainly executed by the operation information acquisition unit. Next, the operation information acquired in step S0802 is held. This process is mainly executed by the operation information holding unit. In step S0803, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit.

(実施形態2:詳細な具体例)図37は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(3701)と作動情報保持部(3702)と信頼性情報生成部(3705)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば作動情報取得部(3701)は制御回路(3703)から作動情報を取得するようになっていてもよい。また、メモリセルアレイ(3704)を作動情報保持部として利用するようになっており、信頼性情報生成部(3705)はメモリセルアレイ(3704)に保持された作動情報から信頼性情報を生成するようになっていてもよい。   (Embodiment 2: Detailed Specific Example) FIG. 37 shows an operation information acquisition unit (3701), an operation information holding unit (3702), and a reliability information generation unit (3705) in addition to the configuration of a general flash memory. It is a figure which illustrates the case where is comprised inside a memory. In such a case, for example, the operation information acquisition unit (3701) may acquire operation information from the control circuit (3703). Further, the memory cell array (3704) is used as an operation information holding unit, and the reliability information generation unit (3705) generates reliability information from the operation information held in the memory cell array (3704). It may be.

(実施形態2:効果)本実施形態に係る不揮発性メモリシステムは、複数の作動情報を利用してブロック単位の信頼性情報を生成できるので、多面的に各ブロックの信頼性を測ることができる。
(実施形態3)
(Embodiment 2: Effect) Since the nonvolatile memory system according to the present embodiment can generate reliability information in units of blocks using a plurality of operation information, the reliability of each block can be measured in many ways. .
(Embodiment 3)

(実施形態3:概要)本実施形態は、各ブロックの信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理することが可能な不揮発性メモリシステムについて説明する。   (Embodiment 3: Overview) In this embodiment, a nonvolatile memory system capable of managing storage / relocation of data for each block using reliability information of each block will be described.

(実施形態3:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
9に例示する。不揮発性メモリシステムは、「作動情報取得部」(0901)と、「作動情報保持部」(0902)と、「信頼性情報生成部」(0903)と、「管理部」(0904)と、を有する。すなわち、本実施形態に係る不揮発性メモリシステムは、実施形態2に係る不揮発性メモリシステムの構成に、「管理部」(0904)を加えた構成となっている。
(Embodiment 3: Configuration) FIG. 9 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (0901), an “operation information holding unit” (0902), a “reliability information generation unit” (0903), and a “management unit” (0904). Have. That is, the nonvolatile memory system according to the present embodiment has a configuration in which the “management unit” (0904) is added to the configuration of the nonvolatile memory system according to the second embodiment.

「管理部」(0904)は、ブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する機能を有する。「ブロック単位の信頼性情報」とは、前記信頼性情報生成部(0903)にて生成されるブロック単位の信頼性情報を指す。「ブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する」とは、例えばデータの格納(書込み)や再配置の命令が不揮発性メモリシステムに対して出力された場合に、より信頼性の高いブロックにデータを格納したり再配置をしたりする場合等が該当する。例えば、図6にて算出したブロック番号8から12の信頼度を例とすると、一番信頼度が高い(値が低い)のはブロック番号8であるので、不揮発性メモリシステムにてデータの書込みを行なう場合にはブロック番号8のブロックに書込む等の処理を行なう。また、複数のブロックを使用してデータの書込みを行なう場合には、信頼度が高い順に、ブロック番号8、9、10、12、11、のブロックを使用していく等となっているとよい。管理部は、具体的には、例えばメモリコントローラなどが該当する。図32に例示するように、メモリコントローラはメモリとCPUとのデータの仲介を行なう機能を有し、例えば、アプリケーション(3201)からメモリ(3203)に対してデータの書込み命令が実行された場合には、まずメモリコントローラ(3202)を介してメモリ(3203)にデータの書込みが行なわれることとなる。   The “management unit” (0904) has a function of managing storage / relocation of data for each block using reliability information in units of blocks. “Reliability information in units of blocks” refers to reliability information in units of blocks generated by the reliability information generation unit (0903). “Using block-unit reliability information to manage data storage and relocation for each block” means that, for example, data storage (write) and relocation commands are output to the nonvolatile memory system. In this case, data is stored or rearranged in a more reliable block. For example, taking the reliability of block numbers 8 to 12 calculated in FIG. 6 as an example, since the block number 8 has the highest reliability (value is low), the data is written in the nonvolatile memory system. When performing the above, processing such as writing to the block of block number 8 is performed. In addition, when data is written using a plurality of blocks, it is preferable that the blocks with the block numbers 8, 9, 10, 12, 11 are used in descending order of reliability. . Specifically, the management unit corresponds to, for example, a memory controller. As illustrated in FIG. 32, the memory controller has a function of mediating data between the memory and the CPU. For example, when a data write command is executed from the application (3201) to the memory (3203). First, data is written to the memory (3203) via the memory controller (3202).

管理部の具体的な処理としては、例えば信頼性情報生成部においてRAMやHDD等の所定の記憶領域に格納されている各ブロックの信頼性情報を読出し、読出した各ブロックの信頼性情報にて表される信頼度のうち最も小さい値を示すブロックのブロック番号をRAM等の所定の記憶領域に格納する。さらに、RAM等の所定の記憶領域から信頼度の最も小さいブロックのブロック番号を読出し、読出したブロック番号のブロックに対してデータの格納(書込み)を行なう。また、管理部はこのような処理をCPUに実行させるためのプログラムを含んでいてもよい。   As specific processing of the management unit, for example, the reliability information generation unit reads out the reliability information of each block stored in a predetermined storage area such as a RAM or an HDD, and uses the read reliability information of each block. The block number of the block showing the smallest value among the expressed reliability is stored in a predetermined storage area such as a RAM. Further, the block number of the block having the lowest reliability is read from a predetermined storage area such as a RAM, and data is stored (written) in the block having the read block number. The management unit may include a program for causing the CPU to execute such processing.

(実施形態3:処理の流れ)図10は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Third Embodiment: Process Flow) FIG. 10 exemplifies a flowchart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS1001において不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する。この処理は、主に作動情報取得部によって実行される。次に、ステップS1002において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS1003において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS1004においてブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する。この処理は、主に管理部によって実行される。次に、ステップS1005において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS1001に戻る。   First, in step S1001, a plurality of types of operation information of the nonvolatile memory device are acquired in units of blocks. This process is mainly executed by the operation information acquisition unit. Next, the operation information acquired in step S1002 is held. This process is mainly executed by the operation information holding unit. In step S1003, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. In step S1004, storage / relocation of data for each block is managed using reliability information in units of blocks. This process is mainly executed by the management unit. Next, in step S1005, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S1001.

(実施形態3:詳細な具体例)図38は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(3801)と作動情報保持部(3802)と信頼性情報生成部(3805)と管理部(3803)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(3803)がすなわち管理部の役目を果たしていてもよい。また、例えば作動情報取得部(3801)は制御回路(3803)から作動情報を取得するようになっていてもよい。また、メモリセルアレイ(3804)を作動情報保持部として利用するようになっており、信頼性情報生成部(3805)はメモリセルアレイ(3804)に保持された作動情報から信頼性情報を生成するようになっていてもよい。   (Third Embodiment: Detailed Specific Example) FIG. 38 shows an operation information acquisition unit (3801), an operation information holding unit (3802), and a reliability information generation unit (3805) in addition to a general flash memory configuration. It is a figure which illustrates the case where the management part (3803) is comprised inside the memory. In such a case, for example, the control circuit (3803) may serve as a management unit. For example, the operation information acquisition unit (3801) may acquire operation information from the control circuit (3803). The memory cell array (3804) is used as an operation information holding unit, and the reliability information generation unit (3805) generates reliability information from the operation information held in the memory cell array (3804). It may be.

(実施形態3:効果)本実施形態に係る不揮発性メモリシステムは、各ブロックの信頼性情報に基づいてデータの格納や再配置を行なうことができるので、例えば劣化の少ない、より信頼性の高いブロックにデータを格納等することができる。
(実施形態4)
(Embodiment 3: Effect) Since the nonvolatile memory system according to this embodiment can store and rearrange data based on the reliability information of each block, for example, the deterioration is less and the reliability is higher. Data can be stored in a block.
(Embodiment 4)

(実施形態4:概要)本実施形態は、ブロックごとにデータを格納する際にエラー訂正符号を付加して格納を行ない、読出しに際しては読出しエラーの訂正を行なうことで、作動情報として読出しエラーの訂正の成否を示すエラー訂正情報を取得することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 4: Overview) In this embodiment, when data is stored for each block, an error correction code is added and stored, and when reading is performed, the reading error is corrected. A non-volatile memory system that acquires error correction information indicating the success or failure of correction will be described.

(実施形態4:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
11に例示する。不揮発性メモリシステムは、「作動情報取得部」(1101)と、「作動情報保持部」(1102)と、「信頼性情報生成部」(1103)と、「管理部」(1104)と、を有する。また、管理部(1104)は、「訂正手段」(1105)を有する。また、作動情報取得部(1101)は、「エラー訂正情報取得手段」(1106)を有する。すなわち、本実施形態に係る不揮発性メモリシステムは、実施形態3に係る不揮発性メモリシステムの構成に、「訂正手段」(1105)と「エラー訂正情報取得手段」(1106)を加えた構成となっている。
(Embodiment 4: Configuration) FIG. 11 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (1101), an “operation information holding unit” (1102), a “reliability information generation unit” (1103), and a “management unit” (1104). Have. Further, the management unit (1104) includes a “correction unit” (1105). The operation information acquisition unit (1101) includes an “error correction information acquisition unit” (1106). That is, the nonvolatile memory system according to the present embodiment is configured by adding “correction means” (1105) and “error correction information acquisition means” (1106) to the configuration of the nonvolatile memory system according to the third embodiment. ing.

「訂正手段」(1105)は、ブロックごとのデータの格納に際して読出エラー訂正のためにエラー訂正符号を含む格納を行なうとともに、読出に際して読出エラーの訂正を行なう機能を有する。「エラー訂正符号」とは、具体的には、例えばECC(Error−Correcting Code)、ハミング符号、等が該当する。例えばECCの場合、図33に例示するように、データ64ビット(3301)につき8ビットのエラー訂正用チェックビット(3302)を持たせると2ビットまでの誤りを検出し1ビットまでの誤りは訂正することができる。また、「エラー訂正符号を含む格納」とは、すなわち、図33の例で言えばデータの64ビットに8ビットのエラー訂正用チェックビットを加えて全72ビットを格納することを意味する。   "Correction means" (1105) has a function of storing an error correction code for reading error correction when storing data for each block, and correcting a reading error when reading. Specifically, the “error correction code” corresponds to, for example, ECC (Error-Coding Code), Hamming code, and the like. For example, in the case of ECC, as shown in FIG. 33, if 64 bits (3301) of data have 8 bits of error correction check bits (3302), errors up to 2 bits are detected and errors up to 1 bit are corrected. can do. Further, “storage including error correction code” means that, in the example of FIG. 33, all 72 bits are stored by adding 8 bits of error correction check bits to 64 bits of data.

「エラー訂正情報取得手段」(1106)は、作動情報として読出エラーの訂正の成功・不成功を示すエラー訂正情報をブロックごとに取得する機能を有する。「読出エラーの訂正の成功・不成功」とは、読出エラーのチェックを行ないエラーがあると判断してエラー訂正を行なったか否かを意味してもよいし、エラー訂正を行なった結果として訂正することができたか否かを意味してもよい。   The “error correction information acquisition means” (1106) has a function of acquiring, as operation information, error correction information indicating success / failure of correction of a read error for each block. "Success / unsuccessful correction of read error" may mean whether or not an error has been corrected by checking the read error and corrected as a result of error correction. It may mean whether or not it was possible.

図12は、エラー訂正情報の具体例を示す。図12に例示したエラー訂正情報は、ブロック番号12のブロックは、読出エラー訂正が成功したことを表している。より具体的には、エラー訂正情報は、例えば「block_num=12、error_correct=‘success’」というようなデータにより表される。ここで、「block_num」は、前述のようにブロック番号を表すプログラム上の変数である。また、「error_correct」は、読出エラーの訂正の成功・不成功を表すプログラム上の変数であり、値が‘success’であれば読出エラーの訂正が成功したことを表し、値が‘unsuccess’であれば読出エラーの訂正が不成功であったことを表す。また、図12においてはブロック番号12のブロックのみについてのエラー訂正情報を示しているが、他の各ブロックについても同様にエラー訂正情報が取得されることとなる。エラー訂正情報は作動情報として取得されるものであるので、エラー訂正情報の取得元としては、前記訂正手段(1105)等が想定される。   FIG. 12 shows a specific example of error correction information. The error correction information illustrated in FIG. 12 indicates that the block of block number 12 has been successfully read error corrected. More specifically, the error correction information is represented by data such as “block_num = 12, error_correct =‘ success ’”, for example. Here, “block_num” is a program variable representing a block number as described above. “Error_correct” is a program variable indicating the success or failure of the read error correction. If the value is “success”, it indicates that the read error has been successfully corrected, and the value is “unsuccess”. If there is, it indicates that the correction of the read error was unsuccessful. Further, FIG. 12 shows error correction information for only the block of block number 12, but error correction information is also acquired for each of the other blocks. Since the error correction information is acquired as operation information, the correction means (1105) or the like is assumed as the acquisition source of the error correction information.

(実施形態4:処理の流れ)図13は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Embodiment 4: Process Flow) FIG. 13 illustrates a flowchart showing a process flow in the nonvolatile memory system according to this embodiment.

最初に、ステップS1301において作動情報として読出エラーの訂正の成功・不成功を示すエラー訂正情報を作動情報として取得する。この処理は、主にエラー訂正情報取得手段によって実行される。次に、ステップS1302において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS1303において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS1304においてブロックごとのデータの格納に際して読出エラー訂正のためにエラー訂正符号を含む格納を行なうとともに、読出に際して読出エラーの訂正を行なう。この処理は、主に訂正手段によって実行される。次に、ステップS1305において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS1301に戻る。   First, in step S1301, error correction information indicating successful / unsuccessful reading error correction is acquired as operation information as operation information. This process is mainly executed by the error correction information acquisition unit. Next, the operation information acquired in step S1302 is held. This process is mainly executed by the operation information holding unit. In step S1303, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. Next, in step S1304, storage including an error correction code is performed for reading error correction in storing data for each block, and reading error is corrected in reading. This process is mainly executed by correction means. Next, in step S1305, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S1301.

(実施形態4:詳細な具体例)図39は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(エラー訂正情報取得手段)(3901)と作動情報保持部(3902)と信頼性情報生成部(3905)と管理部(訂正手段)(3903)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(3903)がすなわち管理部(訂正手段)の役目を果たしていてもよい。また、例えば作動情報取得部(エラー訂正情報取得手段)(3901)は制御回路(3903)から作動情報(エラー訂正情報)を取得するようになっていてもよい。また、メモリセルアレイ(3904)を作動情報保持部として利用するようになっており、信頼性情報生成部(3905)はメモリセルアレイ(3904)に保持された作動情報(エラー訂正情報)から信頼性情報を生成するようになっていてもよい。   (Embodiment 4: Detailed Specific Example) FIG. 39 shows an operation information acquisition unit (error correction information acquisition means) (3901), an operation information holding unit (3902), and reliability in addition to the configuration of a general flash memory. It is a figure which illustrates the case where the information generation part (3905) and the management part (correction means) (3903) are comprised inside the memory. In such a case, for example, the control circuit (3903) may serve as a management unit (correction means). For example, the operation information acquisition unit (error correction information acquisition means) (3901) may acquire operation information (error correction information) from the control circuit (3903). Further, the memory cell array (3904) is used as an operation information holding unit, and the reliability information generation unit (3905) uses the reliability information from the operation information (error correction information) held in the memory cell array (3904). May be generated.

また、さらに訂正手段における、前記「ブロックごとのデータの格納に際して読出エラー訂正のためにエラー訂正符号を含む格納」はメモリの外部にて実行され、前記「読出に際して読出エラーの訂正」はメモリ内部(制御回路3903)にて実行されるようになっていてもよい。   Further, in the correction means, the “storage including an error correction code for reading error correction when storing data for each block” is executed outside the memory, and the “correction of reading error when reading” is performed in the memory. (Control circuit 3903) may be executed.

(実施形態4:効果)本実施形態に係る不揮発性メモリシステムは、作動情報としてエラー訂正情報をブロックごとに取得することができるので、例えばエラー訂正を行なうことができないブロックを避けて、データの格納等を行なうことができる。
(実施形態5)
(Embodiment 4: Effect) Since the nonvolatile memory system according to this embodiment can acquire error correction information as operation information for each block, for example, avoid blocks that cannot perform error correction, Storage and the like can be performed.
(Embodiment 5)

(実施形態5:概要)本実施形態は、ブロックごとにデータの格納に要した時間を示す格納時間情報を作動情報として取得することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 5: Overview) This embodiment will describe a nonvolatile memory system characterized in that storage time information indicating the time required to store data is obtained as operation information for each block.

(実施形態5:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
14に例示する。本実施形態に係る不揮発性メモリシステムは、実施形態3又は4に係る不揮発性メモリシステムの構成に、「格納時間情報取得手段」(1407)を加えた構成となっている。図14においては、実施形態3に係る不揮発性メモリシステムの構成に、「格納時間情報取得手段」(1407)を加えた構成を例示している。不揮発性メモリシステムは、「作動情報取得部」(1401)と、「作動情報保持部」(1402)と、「信頼性情報生成部」(1403)と、「管理部」(1404)と、を有する。また、作動情報取得部(1401)は、「格納時間情報取得手段」(1407)を有する。
(Embodiment 5: Configuration) FIG. 14 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system according to the present embodiment is configured by adding “storage time information acquisition means” (1407) to the configuration of the nonvolatile memory system according to the third or fourth embodiment. FIG. 14 illustrates a configuration in which a “storage time information acquisition unit” (1407) is added to the configuration of the nonvolatile memory system according to the third embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (1401), an “operation information holding unit” (1402), a “reliability information generation unit” (1403), and a “management unit” (1404). Have. The operation information acquisition unit (1401) includes a “storage time information acquisition unit” (1407).

「格納時間情報取得手段」(1407)は、管理部(1404)からブロックごとにデータの格納に要した時間を示す格納時間情報を作動情報として取得する機能を有する。「格納に要した時間」とは、図35に例示した構成において、メモリコントローラ(3501)から制御回路(3502)までの処理時間であってもよいし、制御回路(3502)からメモリセル(3503)までの処理時間であってもよいし、双方の処理時間を足し合わせた処理時間であってもよい。さらに詳しくは、図40は一般的なフラッシュメモリの構成に加えて、作動情報取得部(格納時間情報取得手段)(4001)と作動情報保持部(4002)と信頼性情報生成部(4005)と管理部(制御回路4003)とがメモリ内部に構成されている場合を例示する図であるが、通常、格納データは、DQ0〜DQ15に与えられる。また、アドレスは/CEと/WEの両方がLレベルとなった時、データは/WEと/CEの両方がLレベルになった後いずれか一方が立ち上がってHレベルへ変化したタイミングにてメモリセルアレイ(4004)に取り込まれることとなる。また、NOR型フラッシュメモリにおいては、例えば特定のアドレスに特定のデータを3回書込んだ後に格納データを1回書込むというコマンドシーケンスを踏むことで格納データの書込み(格納)を行なうことができるが、格納時間とは、これら一連の格納処理が行なわれる時間等が該当する。   The “storage time information acquisition unit” (1407) has a function of acquiring, as operation information, storage time information indicating the time required to store data for each block from the management unit (1404). The “time required for storage” may be a processing time from the memory controller (3501) to the control circuit (3502) in the configuration illustrated in FIG. 35, or from the control circuit (3502) to the memory cell (3503). ) Or a processing time obtained by adding both processing times. More specifically, FIG. 40 shows an operation information acquisition unit (storage time information acquisition means) (4001), an operation information holding unit (4002), and a reliability information generation unit (4005) in addition to a general flash memory configuration. Although it is a figure which illustrates the case where the management part (control circuit 4003) is comprised inside a memory, normally, stored data are given to DQ0-DQ15. In addition, when both of the addresses / CE and / WE are at the L level, the data is stored in memory at the timing when either one of the / WE and / CE rises to the L level and then changes to the H level. It will be taken into the cell array (4004). In the NOR flash memory, for example, the stored data can be written (stored) by following a command sequence in which specific data is written three times to a specific address and then stored data is written once. However, the storage time corresponds to a time during which a series of storage processes are performed.

図15は、格納時間情報の具体例を示す。図15に例示した格納時間情報は、ブロック番号12のブロックは、データを格納するのに200μs(マイクロ秒)要したことを表している。より具体的には、格納時間情報は、例えば「block_num=12、write_time=200」というようなデータにより表される。ここで、「block_num」は、前述のようにブロック番号を表すプログラム上の変数である。また、「write_time」は、データの格納に要した時間を表すプログラム上の変数であり、図15においては単位はマイクロ秒で表されている。また、図15においてはブロック番号12のブロックのみについての格納時間情報を示しているが、他の各ブロックについても同様に格納時間情報が取得されることとなる。格納時間情報は作動情報として取得されるものであるので、格納時間情報の取得元としては、前記管理部(1404)等が想定される。   FIG. 15 shows a specific example of storage time information. The storage time information illustrated in FIG. 15 indicates that the block of block number 12 took 200 μs (microseconds) to store data. More specifically, the storage time information is represented by data such as “block_num = 12, write_time = 200”. Here, “block_num” is a program variable representing a block number as described above. Further, “write_time” is a program variable that represents the time required to store the data, and in FIG. 15, the unit is expressed in microseconds. Further, in FIG. 15, the storage time information for only the block of block number 12 is shown, but the storage time information is similarly acquired for each of the other blocks. Since the storage time information is acquired as operation information, the management unit (1404) or the like is assumed as an acquisition source of the storage time information.

(実施形態5:処理の流れ)図16は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Embodiment 5: Process Flow) FIG. 16 illustrates a flowchart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS1601においてブロックごとにデータの格納に要した時間を示す格納時間情報を作動情報として取得する。この処理は、主に格納時間情報取得手段によって実行される。次に、ステップS1602において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS1603において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS1604においてブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する。この処理は、主に管理部によって実行される。次に、ステップS1605において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS1601に戻る。   First, in step S1601, storage time information indicating the time required to store data for each block is acquired as operation information. This process is mainly executed by the storage time information acquisition unit. Next, the operation information acquired in step S1602 is held. This process is mainly executed by the operation information holding unit. In step S1603, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. In step S 1604, storage / relocation of data for each block is managed using reliability information in units of blocks. This process is mainly executed by the management unit. Next, in step S1605, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S1601.

(実施形態5:詳細な具体例)図40は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(格納時間情報取得手段)(4001)と作動情報保持部(4002)と信頼性情報生成部(4005)と管理部(4003)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(4003)がすなわち管理部の役目を果たしていてもよい。また、例えば作動情報取得部(格納時間情報取得手段)(4001)は制御回路(4003)から作動情報(格納時間情報)を取得するようになっていてもよい。また、メモリセルアレイ(4004)を作動情報保持部として利用するようになっており、信頼性情報生成部(4005)はメモリセルアレイ(4004)に保持された作動情報(格納時間情報)から信頼性情報を生成するようになっていてもよい。   (Embodiment 5: Detailed Specific Example) FIG. 40 shows an operation information acquisition unit (storage time information acquisition means) (4001), an operation information holding unit (4002), and reliability in addition to a general flash memory configuration. It is a figure which illustrates the case where the information generation part (4005) and the management part (4003) are comprised in the memory. In such a case, for example, the control circuit (4003) may serve as a management unit. Further, for example, the operation information acquisition unit (storage time information acquisition means) (4001) may acquire operation information (storage time information) from the control circuit (4003). Further, the memory cell array (4004) is used as an operation information holding unit, and the reliability information generation unit (4005) uses the reliability information from the operation information (storage time information) held in the memory cell array (4004). May be generated.

(実施形態5:効果)本実施形態に係る不揮発性メモリシステムは、格納時間情報を作動情報として取得することができるので、劣化してくるとデータの格納時間が長くなるというフラッシュメモリの特性を利用して、信頼性の低い(劣化している)ブロックを避けて、データの格納等を行なうことができる。また、格納時間情報自体が消失しても計測し直すことが可能であり、かつメモリ生産時における各ブロックの特性のばらつきをも考慮することが可能である。
(実施形態6)
(Embodiment 5: Effect) Since the nonvolatile memory system according to this embodiment can acquire storage time information as operation information, the flash memory has a characteristic that the storage time of data becomes longer when it deteriorates. By using it, data can be stored while avoiding blocks with low reliability (deteriorated). In addition, even if the storage time information itself disappears, it is possible to measure again, and it is also possible to consider variations in the characteristics of each block during memory production.
(Embodiment 6)

(実施形態6:概要)本実施形態は、ブロックごとにデータの消去に要した時間を示す消去時間情報を作動情報として取得することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 6: Overview) This embodiment will describe a nonvolatile memory system characterized in that erase time information indicating the time required for erasing data is acquired as operation information for each block.

(実施形態6:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
17に例示する。本実施形態に係る不揮発性メモリシステムは、実施形態3から5のいずれか一に係る不揮発性メモリシステムの構成に、「消去時間情報取得手段」(1708)を加えた構成となっている。図17においては、実施形態3に係る不揮発性メモリシステムの構成に、「消去時間情報取得手段」(1708)を加えた構成を例示している。不揮発性メモリシステムは、「作動情報取得部」(1701)と、「作動情報保持部」(1702)と、「信頼性情報生成部」(1703)と、「管理部」(1704)と、を有する。また、作動情報取得部(1701)は、「消去時間情報取得手段」(1708)を有する。
(Embodiment 6: Configuration) FIG. 17 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system according to the present embodiment is configured by adding “erasing time information acquisition means” (1708) to the configuration of the nonvolatile memory system according to any one of Embodiments 3 to 5. FIG. 17 illustrates a configuration in which “erase time information acquisition unit” (1708) is added to the configuration of the nonvolatile memory system according to the third embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (1701), an “operation information holding unit” (1702), a “reliability information generation unit” (1703), and a “management unit” (1704). Have. Further, the operation information acquisition unit (1701) includes “erase time information acquisition unit” (1708).

「消去時間情報取得手段」(1708)は、管理部(1704)からブロックごとにデータの消去に要した時間を示す消去時間情報を作動情報として取得する機能を有する。「消去に要した時間」とは、図35に例示した構成において、メモリコントローラ(3501)から制御回路(3502)までの処理時間であってもよいし、制御回路(3502)からメモリセル(3503)までの処理時間であってもよいし、双方の処理時間を足し合わせた処理時間であってもよい。さらに詳しくは、図41は一般的なフラッシュメモリの構成に加えて、作動情報取得部(消去時間情報取得手段)(4101)と作動情報保持部(4102)と信頼性情報生成部(4105)と管理部(制御回路4103)とがメモリ内部に構成されている場合を例示する図であるが、データの格納と同様に、アドレスは/CEと/WEの両方がLレベルとなった時、データは/WEと/CEの両方がLレベルになった後いずれか一方が立ち上がってHレベルへ変化したタイミングにてメモリセルアレイ(4104)に取り込まれることとなる。NOR型フラッシュメモリにおいては、例えば特定のアドレスに特定のデータを6回書込むというコマンドシーケンスを踏むことでデータの消去が行なうことができるが、消去時間とは、これら一連の消去処理が行なわれる時間等が該当する。   The “erase time information acquisition unit” (1708) has a function of acquiring, from the management unit (1704), erase time information indicating the time required for erasing data for each block as operation information. The “time required for erasing” may be a processing time from the memory controller (3501) to the control circuit (3502) in the configuration illustrated in FIG. 35, or from the control circuit (3502) to the memory cell (3503). ) Or a processing time obtained by adding both processing times. More specifically, FIG. 41 shows an operation information acquisition unit (erasing time information acquisition unit) (4101), an operation information holding unit (4102), and a reliability information generation unit (4105) in addition to a general flash memory configuration. FIG. 10 is a diagram illustrating a case where the management unit (control circuit 4103) is configured in the memory. As in the case of data storage, the address is the data when both / CE and / WE are at the L level. After both / WE and / CE become L level, one of them rises and is taken into the memory cell array (4104) at the timing when it changes to H level. In a NOR flash memory, for example, data can be erased by following a command sequence of writing specific data six times at a specific address, but the erase time is a series of these erase processes. Applies time.

図18は、消去時間情報の具体例を示す。図18に例示した消去時間情報は、ブロック番号12のブロックは、データを消去するのに2ms(ミリ秒)要したことを表している。より具体的には、消去時間情報は、例えば「block_num=12、erase_time=2」というようなデータにより表される。ここで、「block_num」は、前述のようにブロック番号を表すプログラム上の変数である。また、「erase_time」は、データの消去に要した時間を表すプログラム上の変数であり、図18においては単位はミリ秒で表されている。また、図18においてはブロック番号12のブロックのみについての消去時間情報を示しているが、他の各ブロックについても同様に消去時間情報が取得されることとなる。消去時間情報は作動情報として取得されるものであるので、消去時間情報の取得元としては、前記管理部(1704)等が想定される。   FIG. 18 shows a specific example of the erase time information. The erasure time information illustrated in FIG. 18 indicates that the block with block number 12 took 2 ms (milliseconds) to erase data. More specifically, the erasure time information is represented by data such as “block_num = 12, erase_time = 2”. Here, “block_num” is a program variable representing a block number as described above. “Erase_time” is a program variable that represents the time required for erasing data. In FIG. 18, the unit is expressed in milliseconds. Further, FIG. 18 shows the erase time information for only the block with the block number 12, but the erase time information is similarly obtained for the other blocks. Since the erasure time information is acquired as operation information, the management unit (1704) or the like is assumed as the acquisition source of the erasure time information.

(実施形態6:処理の流れ)図19は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Sixth Embodiment: Process Flow) FIG. 19 exemplifies a flowchart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS1901においてブロックごとにデータの消去に要した時間を示す消去時間情報を作動情報として取得する。この処理は、主に消去時間情報取得手段によって実行される。次に、ステップS1902において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS1903において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS1904においてブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する。この処理は、主に管理部によって実行される。次に、ステップS1905において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS1901に戻る。   First, in step S1901, erase time information indicating the time required for erasing data is acquired as operation information for each block. This process is mainly executed by the erase time information acquisition means. Next, the operation information acquired in step S1902 is held. This process is mainly executed by the operation information holding unit. In step S1903, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. In step S1904, storage / relocation of data for each block is managed using reliability information in units of blocks. This process is mainly executed by the management unit. Next, in step S1905, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S1901.

(実施形態6:詳細な具体例)図41は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(消去時間情報取得手段)(4101)と作動情報保持部(4102)と信頼性情報生成部(4105)と管理部(4103)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(4103)がすなわち管理部の役目を果たしていてもよい。また、例えば作動情報取得部(消去時間情報取得手段)(4101)は制御回路(4103)から作動情報(消去時間情報)を取得するようになっていてもよい。また、メモリセルアレイ(4104)を作動情報保持部として利用するようになっており、信頼性情報生成部(4105)はメモリセルアレイ(4104)に保持された作動情報(消去時間情報)から信頼性情報を生成するようになっていてもよい。   (Sixth Embodiment: Detailed Specific Example) FIG. 41 shows an operation information acquisition unit (erase time information acquisition unit) (4101), an operation information holding unit (4102), and reliability in addition to a general flash memory configuration. It is a figure which illustrates the case where the information generation part (4105) and the management part (4103) are comprised inside the memory. In such a case, for example, the control circuit (4103) may serve as a management unit. Further, for example, the operation information acquisition unit (erase time information acquisition means) (4101) may acquire operation information (erase time information) from the control circuit (4103). Further, the memory cell array (4104) is used as an operation information holding unit, and the reliability information generation unit (4105) uses the reliability information from the operation information (erasure time information) held in the memory cell array (4104). May be generated.

(実施形態6:効果)本実施形態に係る不揮発性メモリシステムは、消去時間情報を作動情報として取得することができるので、劣化してくるとデータの消去時間が長くなるというフラッシュメモリの特性を利用して、信頼性の低い(劣化している)ブロックを避けて、データの格納等を行なうことができる。また、消去時間情報自体が消失しても計測し直すことが可能であり、かつメモリ生産時における各ブロックの特性のばらつきをも考慮することが可能である。
(実施形態7)
(Embodiment 6: Effect) Since the nonvolatile memory system according to this embodiment can acquire the erasing time information as the operation information, the flash memory has a characteristic that the erasing time of the data becomes longer when it deteriorates. By using it, data can be stored while avoiding blocks with low reliability (deteriorated). In addition, even if the erase time information itself disappears, it is possible to measure again, and it is also possible to take into account variations in the characteristics of each block during memory production.
(Embodiment 7)

(実施形態7:概要)本実施形態は、ブロックごとにデータの消去回数を示す消去回数情報を作動情報として取得することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 7: Overview) This embodiment will describe a nonvolatile memory system characterized in that erase count information indicating the erase count of data is acquired as operation information for each block.

(実施形態7:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
20に例示する。本実施形態に係る不揮発性メモリシステムは、実施形態3から6のいずれか一に係る不揮発性メモリシステムの構成に、「消去回数情報取得手段」(2009)を加えた構成となっている。図20においては、実施形態3に係る不揮発性メモリシステムの構成に、「消去回数情報取得手段」(2009)を加えた構成を例示している。不揮発性メモリシステムは、「作動情報取得部」(2001)と、「作動情報保持部」(2002)と、「信頼性情報生成部」(2003)と、「管理部」(2004)と、を有する。また、作動情報取得部(2001)は、「消去回数情報取得手段」(2009)を有する。
(Embodiment 7: Configuration) FIG. 20 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system according to the present embodiment is configured by adding “erase count information acquisition means” (2009) to the configuration of the nonvolatile memory system according to any one of Embodiments 3 to 6. FIG. 20 illustrates a configuration in which “erase count information acquisition unit” (2009) is added to the configuration of the nonvolatile memory system according to the third embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (2001), an “operation information holding unit” (2002), a “reliability information generation unit” (2003), and a “management unit” (2004). Have. The operation information acquisition unit (2001) includes “erase count information acquisition unit” (2009).

「消去回数情報取得手段」(2009)は、管理部(2004)からブロックごとにデータの消去回数を示す消去回数情報を作動情報として取得する機能を有する。図42は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(消去回数情報取得手段)(4201)と作動情報保持部(4202)と信頼性情報生成部(4205)と管理部(制御回路4203)とがメモリ内部に構成されている場合を例示する図であるが、消去回数は、例えば制御回路(4203)で実行を許可した消去コマンドのカウンターをインクリメントすることにより取得することができる。   The “erase count information acquisition unit” (2009) has a function of acquiring, as operation information, erase count information indicating the number of erases of data for each block from the management unit (2004). FIG. 42 shows an operation information acquisition unit (erase count information acquisition unit) (4201), an operation information holding unit (4202), a reliability information generation unit (4205), and a management unit (in addition to a general flash memory configuration). The control circuit 4203) is a diagram exemplifying a case where the memory is configured inside the memory. For example, the number of erasures can be acquired by incrementing the counter of the erase command permitted to be executed by the control circuit (4203). it can.

図21は、消去回数情報の具体例を示す。図21に例示した消去回数情報は、ブロック番号12のブロックは、データの消去回数が32000回であることを表している。より具体的には、消去回数情報は、例えば「block_num=12、erase_count=32000」というようなデータにより表される。ここで、「block_num」は、前述のようにブロック番号を表すプログラム上の変数であり、「erase_count」は、データの消去回数を表すプログラム上の変数である。また、図21においてはブロック番号12のブロックのみについての消去回数情報を示しているが、他の各ブロックについても同様に消去回数情報が取得されることとなる。消去回数情報は作動情報として取得されるものであるので、消去回数情報の取得元としては、前記管理部(2004)等が想定される。   FIG. 21 shows a specific example of the erase count information. The erase count information illustrated in FIG. 21 indicates that the block with the block number 12 has 32,000 data erase cycles. More specifically, the erase count information is represented by data such as “block_num = 12, erase_count = 32000”, for example. Here, “block_num” is a program variable representing a block number as described above, and “erase_count” is a program variable representing the number of times data is erased. FIG. 21 shows the erase count information for only the block with the block number 12, but the erase count information is similarly acquired for the other blocks. Since the erase count information is acquired as operation information, the management unit (2004) or the like is assumed as the acquisition source of the erase count information.

(実施形態7:処理の流れ)図22は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Embodiment 7: Process Flow) FIG. 22 illustrates a flow chart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS2201においてブロックごとにデータの消去回数を示す消去回数情報を作動情報として取得する。この処理は、主に消去回数情報取得手段によって実行される。次に、ステップS2202において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS2203において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS2204においてブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する。この処理は、主に管理部によって実行される。次に、ステップS2205において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS2201に戻る。   First, in step S2201, erase number information indicating the number of data erases for each block is acquired as operation information. This process is mainly executed by the erase count information acquisition means. Next, the operation information acquired in step S2202 is held. This process is mainly executed by the operation information holding unit. In step S2203, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. In step S2204, storage / relocation of data for each block is managed using reliability information in units of blocks. This process is mainly executed by the management unit. Next, in step S2205, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S2201.

(実施形態7:詳細な具体例)図42は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(消去回数情報取得手段)(4201)と作動情報保持部(4202)と信頼性情報生成部(4205)と管理部(4203)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(4203)がすなわち管理部の役目を果たしていてもよい。また、例えば作動情報取得部(消去回数情報取得手段)(4201)は制御回路(4203)から作動情報(消去回数情報)を取得するようになっていてもよい。また、メモリセルアレイ(4204)を作動情報保持部として利用するようになっており、信頼性情報生成部(4205)はメモリセルアレイ(4204)に保持された作動情報(消去回数情報)から信頼性情報を生成するようになっていてもよい。   (Seventh Embodiment: Detailed Specific Example) FIG. 42 shows an operation information acquisition unit (erase count information acquisition unit) (4201), an operation information holding unit (4202), and reliability in addition to a general flash memory configuration. It is a figure which illustrates the case where the information generation part (4205) and the management part (4203) are comprised inside the memory. In such a case, for example, the control circuit (4203) may serve as a management unit. Further, for example, the operation information acquisition unit (erase number information acquisition means) (4201) may acquire operation information (erase number information) from the control circuit (4203). Further, the memory cell array (4204) is used as an operation information holding unit, and the reliability information generation unit (4205) uses the reliability information from the operation information (erase count information) held in the memory cell array (4204). May be generated.

(実施形態7:効果)本実施形態に係る不揮発性メモリシステムは、消去回数情報を作動情報として取得することができるので、消去回数の少ないブロックを優先的に使用して、データの格納等を行なうことができる。
(実施形態8)
(Embodiment 7: Effect) Since the nonvolatile memory system according to the present embodiment can acquire the erase count information as the operation information, the block having a small erase count is preferentially used to store data, etc. Can be done.
(Embodiment 8)

(実施形態8:概要)本実施形態は、ブロックごとにデータの読出回数を示す読出回数情報を作動情報として取得することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 8: Overview) In this embodiment, a non-volatile memory system is described in which read count information indicating the read count of data is acquired as operation information for each block.

(実施形態8:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
23に例示する。本実施形態に係る不揮発性メモリシステムは、実施形態3から7のいずれか一に係る不揮発性メモリシステムの構成に、「読出回数情報取得手段」(2310)を加えた構成となっている。図23においては、実施形態3に係る不揮発性メモリシステムの構成に、「読出回数情報取得手段」(2310)を加えた構成を例示している。不揮発性メモリシステムは、「作動情報取得部」(2301)と、「作動情報保持部」(2302)と、「信頼性情報生成部」(2303)と、「管理部」(2304)と、を有する。また、作動情報取得部(2301)は、「読出回数情報取得手段」(2310)を有する。
(Embodiment 8: Configuration) FIG. 23 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system according to the present embodiment is configured by adding “reading number information acquisition means” (2310) to the configuration of the nonvolatile memory system according to any one of Embodiments 3 to 7. FIG. 23 illustrates a configuration in which a “reading number information acquisition unit” (2310) is added to the configuration of the nonvolatile memory system according to the third embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (2301), an “operation information holding unit” (2302), a “reliability information generation unit” (2303), and a “management unit” (2304). Have. Further, the operation information acquisition unit (2301) includes “reading number information acquisition means” (2310).

「読出回数情報取得手段」(2310)は、管理部(2304)からブロックごとにデータの読出回数を示す読出回数情報を作動情報として取得する機能を有する。図43は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(読出回数情報取得手段)(4301)と作動情報保持部(4302)と信頼性情報生成部(4305)と管理部(制御回路4303)とがメモリ内部に構成されている場合を例示する図であるが、読出回数は、例えば制御回路(4303)で実行を許可した読出コマンドのカウンターをインクリメントすることにより取得することができる。   The “reading number information acquisition means” (2310) has a function of acquiring, as operation information, reading number information indicating the number of times data is read for each block from the management unit (2304). FIG. 43 shows an operation information acquisition unit (reading number information acquisition means) (4301), an operation information holding unit (4302), a reliability information generation unit (4305), and a management unit (in addition to a general flash memory configuration). The control circuit 4303) is a diagram exemplifying a case where the memory is configured inside the memory. For example, the number of reads can be obtained by incrementing a counter of a read command permitted to be executed by the control circuit (4303). it can.

図24は、読出回数情報の具体例を示す。図24に例示した読出回数情報は、ブロック番号12のブロックは、データの読出回数が53000回であることを表している。より具体的には、読出回数情報は、例えば「block_num=12、read_count=32000」というようなデータにより表される。ここで、「block_num」は、前述のようにブロック番号を表すプログラム上の変数であり、「read_count」は、データの読出回数を表すプログラム上の変数である。また、図24においてはブロック番号12のブロックのみについての読出回数情報を示しているが、他の各ブロックについても同様に読出回数情報が取得されることとなる。読出回数情報は作動情報として取得されるものであるので、読出回数情報の取得元としては、前記管理部(2004)等が想定される。   FIG. 24 shows a specific example of the read count information. The number-of-reads information illustrated in FIG. 24 indicates that the block with the block number 12 has the number of data read times of 53,000. More specifically, the read count information is represented by data such as “block_num = 12, read_count = 32000”, for example. Here, “block_num” is a program variable representing the block number as described above, and “read_count” is a program variable representing the number of times data is read. Further, in FIG. 24, the read count information for only the block of block number 12 is shown, but the read count information is similarly acquired for each of the other blocks. Since the number-of-reads information is acquired as the operation information, the management unit (2004) or the like is assumed as the source of the number-of-reads information.

(実施形態8:処理の流れ)図25は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Embodiment 8: Process Flow) FIG. 25 exemplifies a flowchart showing a process flow in the nonvolatile memory system according to this embodiment.

最初に、ステップS2501においてブロックごとにデータの読出回数を示す読出回数情報を作動情報として取得する。この処理は、主に読出回数情報取得手段によって実行される。次に、ステップS2502において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS2503において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS2504においてブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する。この処理は、主に管理部によって実行される。次に、ステップS2505において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS2501に戻る。   First, in step S2501, the number-of-reads information indicating the number of times data is read for each block is acquired as operation information. This process is mainly executed by the read count information acquisition means. Next, the operation information acquired in step S2502 is held. This process is mainly executed by the operation information holding unit. In step S2503, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. In step S2504, the storage / relocation of data for each block is managed using the reliability information in units of blocks. This process is mainly executed by the management unit. Next, in step S2505, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S2501.

(実施形態8:詳細な具体例)図43は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(読出回数情報取得手段)(4301)と作動情報保持部(4302)と信頼性情報生成部(4305)と管理部(4303)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(4303)がすなわち管理部の役目を果たしていてもよい。また、例えば作動情報取得部(読出回数情報取得手段)(4301)は制御回路(4303)から作動情報(読出回数情報)を取得するようになっていてもよい。また、メモリセルアレイ(4304)を作動情報保持部として利用するようになっており、信頼性情報生成部(4305)はメモリセルアレイ(4304)に保持された作動情報(読出回数情報)から信頼性情報を生成するようになっていてもよい。   (Embodiment 8: Detailed Specific Example) FIG. 43 shows an operation information acquisition unit (reading number information acquisition means) (4301), an operation information holding unit (4302), and reliability in addition to a general flash memory configuration. It is a figure which illustrates the case where the information generation part (4305) and the management part (4303) are comprised inside the memory. In such a case, for example, the control circuit (4303) may serve as a management unit. Further, for example, the operation information acquisition unit (reading number information acquisition means) (4301) may acquire the operation information (reading number information) from the control circuit (4303). Further, the memory cell array (4304) is used as an operation information holding unit, and the reliability information generation unit (4305) uses the reliability information from the operation information (reading number information) held in the memory cell array (4304). May be generated.

(実施形態8:効果)本実施形態に係る不揮発性メモリシステムは、読出回数情報を作動情報として取得することができるので、読出回数の少ないブロックを優先的に使用してデータの格納等を行なうことが可能であり、特にデータの読出しだけでも劣化するという特性を有するNAND型フラッシュメモリ等において有用である。
(実施形態9)
(Embodiment 8: Effect) Since the nonvolatile memory system according to the present embodiment can acquire the read count information as the operation information, the block having the low read count is preferentially used to store data. In particular, the present invention is useful in a NAND flash memory or the like having a characteristic that deterioration occurs only by reading data.
(Embodiment 9)

(実施形態9:概要)本実施形態は、ブロックごとにデータの格納回数を示す格納回数情報を作動情報として取得することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 9: Overview) In this embodiment, a non-volatile memory system characterized in that storage number information indicating the number of times data is stored for each block is acquired as operation information.

(実施形態9:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図
26に例示する。本実施形態に係る不揮発性メモリシステムは、実施形態3から8のいずれか一に係る不揮発性メモリシステムの構成に、「格納回数情報取得手段」(2611)を加えた構成となっている。図26においては、実施形態3に係る不揮発性メモリシステムの構成に、「格納回数情報取得手段」(2611)を加えた構成を例示している。不揮発性メモリシステムは、「作動情報取得部」(2601)と、「作動情報保持部」(2602)と、「信頼性情報生成部」(2603)と、「管理部」(2604)と、を有する。また、作動情報取得部(2601)は、「格納回数情報取得手段」(2611)を有する。
(Embodiment 9: Configuration) FIG. 26 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The non-volatile memory system according to the present embodiment has a configuration obtained by adding “stored number information acquisition means” (2611) to the configuration of the non-volatile memory system according to any one of the third to eighth embodiments. FIG. 26 exemplifies a configuration in which a “storage number information acquisition unit” (2611) is added to the configuration of the nonvolatile memory system according to the third embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (2601), an “operation information holding unit” (2602), a “reliability information generation unit” (2603), and a “management unit” (2604). Have. Further, the operation information acquisition unit (2601) includes a “stored number information acquisition unit” (2611).

「格納回数情報取得手段」(2611)は、管理部(2604)からブロックごとにデータの格納回数を示す格納回数情報を作動情報として取得する機能を有する。図44は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(格納回数情報取得手段)(4401)と作動情報保持部(4402)と信頼性情報生成部(4405)と管理部(制御回路4403)とがメモリ内部に構成されている場合を例示する図であるが、格納回数は、例えば制御回路(4403)で実行を許可した格納コマンドのカウンターをインクリメントすることにより取得することができる。   The “stored number information acquisition unit” (2611) has a function of acquiring, as operation information, stored number information indicating the number of stored data for each block from the management unit (2604). 44 shows an operation information acquisition unit (storage number information acquisition means) (4401), an operation information holding unit (4402), a reliability information generation unit (4405), and a management unit (in addition to a general flash memory configuration). The control circuit 4403) is a diagram exemplifying a case where the memory is configured inside the memory, but the number of times of storage can be acquired by incrementing a counter of a storage command permitted to be executed by the control circuit (4403), for example. it can.

図27は、格納回数情報の具体例を示す。図27に例示した格納回数情報は、ブロック番号12のブロックは、データの格納回数が30500回であることを表している。より具体的には、格納回数情報は、例えば「block_num=12、write_count=32000」というようなデータにより表される。ここで、「block_num」は、前述のようにブロック番号を表すプログラム上の変数であり、「write_count」は、データの格納回数を表すプログラム上の変数である。また、図27においてはブロック番号12のブロックのみについての格納回数情報を示しているが、他の各ブロックについても同様に格納回数情報が取得されることとなる。格納回数情報は作動情報として取得されるものであるので、格納回数情報の取得元としては、前記管理部(2004)等が想定される。   FIG. 27 shows a specific example of the storage count information. The number-of-storages information illustrated in FIG. 27 indicates that the block with the block number 12 has 30500 data storage times. More specifically, the storage count information is represented by data such as “block_num = 12, write_count = 32000”. Here, “block_num” is a variable on the program representing the block number as described above, and “write_count” is a variable on the program representing the number of times data is stored. In addition, in FIG. 27, the storage count information for only the block with the block number 12 is shown, but the storage count information is similarly acquired for each of the other blocks. Since the storage count information is acquired as operation information, the management unit (2004) or the like is assumed as the acquisition source of the storage count information.

(実施形態9:処理の流れ)図28は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   Ninth Embodiment: Process Flow FIG. 28 exemplifies a flowchart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS2801においてブロックごとにデータの格納回数を示す格納回数情報を作動情報として取得する。この処理は、主に格納回数情報取得手段によって実行される。次に、ステップS2802において取得した作動情報を保持する。この処理は、主に作動情報保持部によって実行される。次に、ステップS2803において複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する。この処理は、主に信頼性情報生成部によって実行される。次に、ステップS2804においてブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する。この処理は、主に管理部によって実行される。次に、ステップS2805において処理を終了するか判断する。ここでの判断が終了するとの判断であった場合には、処理を終了する。ここでの判断が終了しないとの判断であった場合には、ステップS2801に戻る。   First, in step S2801, storage count information indicating the storage count of data for each block is acquired as operation information. This process is mainly executed by the storage count information acquisition unit. Next, the operation information acquired in step S2802 is held. This process is mainly executed by the operation information holding unit. In step S2803, block unit reliability information is generated by calculation using a plurality of pieces of operation information as parameters. This process is mainly executed by the reliability information generation unit. In step S2804, storage / relocation of data for each block is managed using reliability information in units of blocks. This process is mainly executed by the management unit. Next, in step S2805, it is determined whether to end the process. If it is determined that the determination here ends, the process ends. If it is determined that the determination here does not end, the process returns to step S2801.

(実施形態9:詳細な具体例)図44は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(格納回数情報取得手段)(4401)と作動情報保持部(4402)と信頼性情報生成部(4405)と管理部(4403)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば制御回路(4403)がすなわち管理部の役目を果たしていてもよい。また、例えば作動情報取得部(格納回数情報取得手段)(4401)は制御回路(4403)から作動情報(格納回数情報)を取得するようになっていてもよい。また、メモリセルアレイ(4404)を作動情報保持部として利用するようになっており、信頼性情報生成部(4405)はメモリセルアレイ(4404)に保持された作動情報(格納回数情報)から信頼性情報を生成するようになっていてもよい。   (Ninth Embodiment: Detailed Specific Example) FIG. 44 shows an operation information acquisition unit (stored number information acquisition means) (4401), operation information holding unit (4402), and reliability in addition to a general flash memory configuration. It is a figure which illustrates the case where the information generation part (4405) and the management part (4403) are comprised inside the memory. In such a case, for example, the control circuit (4403) may serve as a management unit. Further, for example, the operation information acquisition unit (storage number information acquisition means) (4401) may acquire the operation information (storage number information) from the control circuit (4403). Further, the memory cell array (4404) is used as an operation information holding unit, and the reliability information generation unit (4405) uses the reliability information from the operation information (storage count information) held in the memory cell array (4404). May be generated.

(実施形態9:効果)本実施形態に係る不揮発性メモリシステムは、格納回数情報を作動情報として取得することができるので、格納回数の少ないブロックを優先的に使用して、データの格納等を行なうことができる。
(実施形態10)
(Embodiment 9: Effect) Since the nonvolatile memory system according to the present embodiment can acquire the storage count information as the operation information, the block having the low storage count is preferentially used to store data, etc. Can be done.
(Embodiment 10)

(実施形態10:概要)本実施形態は、作動情報保持部が不揮発性メモリシステム内に配置されている不揮発性メモリシステムであって、作動情報保持部は、作動情報を不揮発性メモリ装置内の複数のブロックに対してエラー訂正符号を含ませて分散して記録することを特徴とする不揮発性メモリシステムについて説明する。   (Embodiment 10: Overview) This embodiment is a nonvolatile memory system in which an operation information holding unit is arranged in a nonvolatile memory system, and the operation information holding unit stores the operation information in the nonvolatile memory device. A non-volatile memory system, in which error correction codes are included in a plurality of blocks and distributedly recorded, will be described.

(実施形態10:構成)本実施形態に係る不揮発性メモリシステムの機能ブロック図を図29に例示する。本実施形態に係る不揮発性メモリシステムは、実施形態1から9のいずれか一に係る不揮発性メモリシステムの構成に、「冗長分散記録手段」(2912)を加えた構成となっている。図29においては、実施形態1に係る不揮発性メモリシステムの構成に、「冗長分散記録手段」(2912)を加えた構成を例示している。不揮発性メモリシステムは、「作動情報取得部」(2901)と、「作動情報保持部」(2902)と、を有する。また、作動情報保持部(2902)は、「冗長分散記録手段」(2912)を有する。なお、作動情報保持部(2902)は、不揮発性メモリ装置内に配置されていることを特徴とする。すなわち、本実施形態に係る不揮発性メモリシステムにおいては、作動情報は不揮発性メモリ装置内に保持されることとなる。   (Embodiment 10: Configuration) FIG. 29 illustrates a functional block diagram of a nonvolatile memory system according to this embodiment. The nonvolatile memory system according to the present embodiment is configured by adding “redundant distributed recording means” (2912) to the configuration of the nonvolatile memory system according to any one of Embodiments 1 to 9. FIG. 29 illustrates a configuration obtained by adding “redundant distributed recording unit” (2912) to the configuration of the nonvolatile memory system according to the first embodiment. The nonvolatile memory system includes an “operation information acquisition unit” (2901) and an “operation information holding unit” (2902). Further, the operation information holding unit (2902) includes a “redundant distributed recording unit” (2912). Note that the operation information holding unit (2902) is arranged in a nonvolatile memory device. That is, in the nonvolatile memory system according to this embodiment, the operation information is held in the nonvolatile memory device.

「冗長分散記録手段」(2912)は、作動情報を不揮発性メモリ装置内の複数のブロックに対してエラー訂正符号を含ませて分散して記録する機能を有する。「エラー訂正符号」とは、前述のように、例えばECC、ハミング符号、等が該当する。「エラー訂正符号を含ませて分散して記録する」とは、複数の作動情報にそれぞれエラー訂正用チェックビット等を加えて別々のブロックに記録することを意味する。すなわち、作動情報を読出す際に読出エラーが発生したとしても、エラー訂正用チェックビット等により読出エラー訂正を行なうことができる。   The “redundant distributed recording means” (2912) has a function of recording operation information in a distributed manner by including error correction codes for a plurality of blocks in the nonvolatile memory device. As described above, the “error correction code” corresponds to, for example, ECC, Hamming code, and the like. “Distributing and recording an error correction code” means adding a check bit for error correction to a plurality of pieces of operation information and recording the information in separate blocks. That is, even if a reading error occurs when reading the operation information, the reading error can be corrected by the error correction check bit or the like.

図30は、冗長分散記録手段における処理の具体例を示す。図30においては、ブロック番号12のブロックの作動情報として、格納時間、消去時間、消去回数、の3つを記録する場合を例示する。例えば、ブロック番号13のブロックには、「block_num=12、write_time=200」という作動情報を記録し、ブロック番号14のブロックには、「block_num=12、erase_time=2」という作動情報を記録し、ブロック番号15のブロックには、「block_num=12、erase_count=32000」という作動情報を記録する。すなわち、ブロック13にはブロック12の格納時間が、ブロック14にはブロック12の消去時間が、ブロック15にはブロック12の消去回数が格納されることとなる。   FIG. 30 shows a specific example of processing in the redundant distributed recording means. FIG. 30 illustrates a case where three pieces of information, that is, storage time, erase time, and erase count, are recorded as the operation information of the block of block number 12. For example, the block number 13 records operation information “block_num = 12, write_time = 200”, and the block number 14 records operation information “block_num = 12, erase_time = 2”. In the block of block number 15, operation information “block_num = 12, erase_count = 32000” is recorded. That is, the storage time of the block 12 is stored in the block 13, the erase time of the block 12 is stored in the block 14, and the erase count of the block 12 is stored in the block 15.

(実施形態10:処理の流れ)図31は、本実施形態に係る不揮発性メモリシステムにおける処理の流れを示すフロー図を例示する。   (Tenth Embodiment: Process Flow) FIG. 31 exemplifies a flow chart showing a process flow in the nonvolatile memory system according to the present embodiment.

最初に、ステップS3101において不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する。この処理は、主に作動情報取得部によって実行される。次に、ステップS3102において作動情報を不揮発性メモリ装置内の複数のブロックに対してエラー訂正符号を含ませて分散して記録する。この処理は、主に冗長分散記録手段によって実行される。   First, in step S3101, a plurality of types of operation information of the nonvolatile memory device are acquired in units of blocks. This process is mainly executed by the operation information acquisition unit. Next, in step S3102, operation information is distributed and recorded with error correction codes included in a plurality of blocks in the nonvolatile memory device. This process is mainly executed by redundant distributed recording means.

(実施形態10:詳細な具体例)図45は、一般的なフラッシュメモリの構成に加えて、作動情報取得部(4501)と作動情報保持部(冗長分散記録手段)(4502)とがメモリ内部に構成されている場合を例示する図である。このような場合、例えば作動情報取得部(4501)は制御回路(4503)から作動情報を取得するようになっていてもよい。また、メモリセルアレイ(4504)を作動情報保持部として利用するようになっていてもよい。   (Embodiment 10: Detailed Specific Example) FIG. 45 shows an operation information acquisition unit (4501) and an operation information holding unit (redundant distributed recording means) (4502) in the memory in addition to a general flash memory configuration. It is a figure which illustrates the case where it is comprised. In such a case, for example, the operation information acquisition unit (4501) may acquire operation information from the control circuit (4503). Further, the memory cell array (4504) may be used as an operation information holding unit.

(実施形態10:効果)本実施形態に係る不揮発性メモリシステムは、作動情報をエラー訂正符号を含ませて記録するため、作動情報を読出す際に読出エラーが発生したとしても、エラー訂正用チェックビット等により読出エラー訂正を行なうことができる。また、作動情報は複数のブロックに分散して記録されるため、例えば一のブロックから作動情報が読み出せない事態になったとしても、他のブロックから他の作動情報を読出すことができるので、より安全である。   (Embodiment 10: Effect) Since the nonvolatile memory system according to the present embodiment records the operation information including the error correction code, even if a read error occurs when reading the operation information, it is used for error correction. Read error correction can be performed by a check bit or the like. Also, since the operation information is distributed and recorded in a plurality of blocks, for example, even if the operation information cannot be read from one block, other operation information can be read from another block. Safer.

実施形態1に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of the nonvolatile memory system according to Embodiment 1 作動情報の一例図Example of operation information 作動情報保持部にて保持されている作動情報の一例図An example of the operation information held in the operation information holding unit 実施形態1に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 3 is a flowchart showing a flow of processing of the nonvolatile memory system according to the first embodiment. 実施形態2に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of a nonvolatile memory system according to Embodiment 2 信頼性情報生成部における処理の一例図Example of processing in reliability information generator 信頼性情報生成部における処理の一例図Example of processing in reliability information generator 実施形態2に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 7 is a flowchart showing a flow of processing of the nonvolatile memory system according to the second embodiment. 実施形態3に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of nonvolatile memory system according to Embodiment 3 実施形態3に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 7 is a flowchart showing a flow of processing of the nonvolatile memory system according to the third embodiment. 実施形態4に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of nonvolatile memory system according to Embodiment 4 エラー訂正情報の一例図Example of error correction information 実施形態4に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 7 is a flowchart showing a flow of processing of the nonvolatile memory system according to the fourth embodiment. 実施形態5に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of nonvolatile memory system according to Embodiment 5 格納時間情報の一例図Example of storage time information 実施形態5に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 7 is a flowchart showing a process flow of the nonvolatile memory system according to the fifth embodiment. 実施形態6に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of nonvolatile memory system according to Embodiment 6 消去時間情報の一例図Example of erase time information 実施形態6に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 7 is a flowchart showing a processing flow of the nonvolatile memory system according to the sixth embodiment. 実施形態7に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of nonvolatile memory system according to Embodiment 7 消去回数情報の一例図Example of erase count information 実施形態7に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 9 is a flowchart showing a processing flow of the nonvolatile memory system according to the seventh embodiment. 実施形態8に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of a nonvolatile memory system according to Embodiment 8 読出回数情報の一例図Example of read count information 実施形態8に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 9 is a flowchart showing a processing flow of the nonvolatile memory system according to the eighth embodiment. 実施形態9に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of nonvolatile memory system according to Embodiment 9 格納回数情報の一例図Example of storage count information 実施形態9に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 10 is a flowchart showing a process flow of the nonvolatile memory system according to the ninth embodiment. 実施形態10に係る不揮発性メモリシステムの機能ブロック図Functional block diagram of a nonvolatile memory system according to Embodiment 10 冗長分散記録手段における処理の具体例Specific example of processing in redundant distributed recording means 実施形態10に係る不揮発性メモリシステムの処理の流れを示すフロー図FIG. 12 is a flowchart showing a process flow of the nonvolatile memory system according to the tenth embodiment. メモリコントローラの具体例Specific example of memory controller ECCを説明する図Illustration explaining ECC 一般的なコンピュータの構成の一例図Example of general computer configuration メモリデバイス内部の処理機構を説明する図The figure explaining the processing mechanism inside a memory device 実施形態1に係る不揮発性メモリシステムの構成の一例図1 is a diagram illustrating an example of a configuration of a nonvolatile memory system according to a first embodiment. 実施形態2に係る不揮発性メモリシステムの構成の一例図FIG. 4 is a diagram illustrating an example of a configuration of a nonvolatile memory system according to a second embodiment. 実施形態3に係る不揮発性メモリシステムの構成の一例図FIG. 4 is a diagram illustrating an example of the configuration of a nonvolatile memory system according to a third embodiment. 実施形態4に係る不揮発性メモリシステムの構成の一例図FIG. 7 is a diagram illustrating an example of a configuration of a nonvolatile memory system according to a fourth embodiment. 実施形態5に係る不揮発性メモリシステムの構成の一例図FIG. 10 is a diagram illustrating an example of a configuration of a nonvolatile memory system according to a fifth embodiment. 実施形態6に係る不揮発性メモリシステムの構成の一例図FIG. 10 is a diagram illustrating an example of a configuration of a nonvolatile memory system according to a sixth embodiment. 実施形態7に係る不揮発性メモリシステムの構成の一例図FIG. 10 is a diagram illustrating an example of a configuration of a nonvolatile memory system according to a seventh embodiment. 実施形態8に係る不揮発性メモリシステムの構成の一例図FIG. 10 is a diagram illustrating an example of the configuration of a nonvolatile memory system according to an eighth embodiment. 実施形態9に係る不揮発性メモリシステムの構成の一例図FIG. 10 is a diagram showing an example of the configuration of a nonvolatile memory system according to Embodiment 9. 実施形態10に係る不揮発性メモリシステムの構成の一例図FIG. 10 is an example of a configuration of a nonvolatile memory system according to the tenth embodiment.

符号の説明Explanation of symbols

0101 作動情報取得部
0102 作動情報保持部
0503 信頼性情報生成部
0904 管理部
0101 Operation information acquisition unit 0102 Operation information holding unit 0503 Reliability information generation unit 0904 Management unit

Claims (17)

ブロック単位でのみデータ消去可能な不揮発性メモリ装置を含む不揮発性メモリシステムであって、
不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する作動情報取得部と、
取得した作動情報を保持する作動情報保持部と、
を有する不揮発性メモリシステム。
A nonvolatile memory system including a nonvolatile memory device capable of erasing data only in block units,
An operation information acquisition unit that acquires a plurality of types of operation information of the nonvolatile memory device in units of blocks;
An operation information holding unit for holding the acquired operation information;
A non-volatile memory system.
複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する信頼性情報生成部を有する請求項1に記載の不揮発性メモリシステム。   The nonvolatile memory system according to claim 1, further comprising a reliability information generation unit configured to generate reliability information in units of blocks by calculation using a plurality of operation information as parameters. ブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する管理部を有する請求項2に記載の不揮発性メモリシステム。   The nonvolatile memory system according to claim 2, further comprising a management unit that manages storage / relocation of data for each block using reliability information in units of blocks. 管理部は、ブロックごとのデータの格納に際して読出エラー訂正のためにエラー訂正符号を含む格納を行なうとともに、読出に際して読出エラーの訂正を行なう訂正手段を有し、
作動情報取得部は、作動情報として読出エラーの訂正の成功・不成功を示すエラー訂正情報をブロックごとに取得するエラー訂正情報取得手段を有する請求項3に記載の不揮発性メモリシステム。
The management unit has a correction means for correcting the read error at the time of reading while storing the error correction code for reading error correction at the time of storing the data for each block,
The non-volatile memory system according to claim 3, wherein the operation information acquisition unit includes error correction information acquisition means for acquiring error correction information indicating the success / failure of correction of the read error as operation information for each block.
作動情報取得部は、管理部からブロックごとにデータの格納に要した時間を示す格納時間情報を作動情報として取得する格納時間情報取得手段を有する請求項3又は4に記載の不揮発性メモリシステム。   5. The nonvolatile memory system according to claim 3, wherein the operation information acquisition unit includes storage time information acquisition means for acquiring, as operation information, storage time information indicating a time required to store data for each block from the management unit. 作動情報取得部は、管理部からブロックごとにデータの消去に要した時間を示す消去時間情報を作動情報として取得する消去時間情報取得手段を有する請求項3から5のいずれか一に記載の不揮発性メモリシステム。   The non-volatile information according to any one of claims 3 to 5, wherein the operation information acquisition unit includes erase time information acquisition means for acquiring, as operation information, erase time information indicating a time required for erasing data for each block from the management unit. Memory system. 作動情報取得部は、管理部からブロックごとにデータの消去回数を示す消去回数情報を作動情報として取得する消去回数情報取得手段を有する請求項3から6のいずれか一に記載の不揮発性メモリシステム。   The nonvolatile memory system according to any one of claims 3 to 6, wherein the operation information acquisition unit includes an erase number information acquisition unit that acquires, from the management unit, erase number information indicating the number of data erases for each block as the operation information. . 作動情報取得部は、管理部からブロックごとにデータの読出回数を示す読出回数情報を作動情報として取得する読出回数情報取得手段を有する請求項3から7のいずれか一に記載の不揮発性メモリシステム。   The non-volatile memory system according to claim 3, wherein the operation information acquisition unit includes a read number information acquisition unit that acquires read number information indicating the number of times of reading data for each block from the management unit as operation information. . 作動情報取得部は、管理部からブロックごとにデータの格納回数を示す格納回数情報を作動情報として取得する格納回数情報取得手段を有する請求項3から8のいずれか一に記載の不揮発性メモリシステム。   9. The nonvolatile memory system according to claim 3, wherein the operation information acquisition unit includes storage number information acquisition means for acquiring, as operation information, storage number information indicating the number of data storage for each block from the management unit. . 作動情報保持部は、不揮発性メモリ装置内に配置されている請求項1から9のいずれか一に記載の不揮発性メモリシステム。   The nonvolatile memory system according to any one of claims 1 to 9, wherein the operation information holding unit is arranged in the nonvolatile memory device. 作動情報保持部は、作動情報を不揮発性メモリ装置内の複数のブロックに対してエラー訂正符号を含ませて分散して記録する冗長分散記録手段を有する請求項10に記載の不揮発性メモリシステム。   11. The nonvolatile memory system according to claim 10, wherein the operation information holding unit includes redundant distributed recording means that records the operation information in a distributed manner by including error correction codes for a plurality of blocks in the nonvolatile memory device. ブロック単位でのみデータ消去可能な不揮発性メモリ装置を含む不揮発性メモリシステムの動作方法であって、
不揮発性メモリ装置の複数種の作動情報をブロック単位で取得する作動情報取得ステップと、
取得した作動情報を保持する作動情報保持ステップと、
を有する不揮発性メモリシステムの動作方法。
A method of operating a nonvolatile memory system including a nonvolatile memory device capable of erasing data only in block units,
An operation information acquisition step of acquiring a plurality of types of operation information of the nonvolatile memory device in units of blocks;
An operation information holding step for holding the acquired operation information;
A method of operating a non-volatile memory system comprising:
複数の作動情報をパラメータとした計算によってブロック単位の信頼性情報を生成する信頼性情報生成ステップを有する請求項12に記載の不揮発性メモリシステムの動作方法。   The operation method of the nonvolatile memory system according to claim 12, further comprising a reliability information generation step of generating reliability information in units of blocks by calculation using a plurality of operation information as parameters. ブロック単位の信頼性情報を利用して各ブロックに対するデータの格納・再配置を管理する管理ステップを有する請求項13に記載の不揮発性メモリシステムの動作方法。   14. The method of operating a nonvolatile memory system according to claim 13, further comprising a management step of managing storage / relocation of data for each block using reliability information in units of blocks. 作動情報取得ステップは、管理ステップにおいてブロックごとにデータの格納に要した時間を示す格納時間情報を作動情報として取得する格納時間情報取得サブステップを有する請求項14に記載の不揮発性メモリシステムの動作方法。   The operation of the nonvolatile memory system according to claim 14, wherein the operation information acquisition step includes a storage time information acquisition substep of acquiring storage time information indicating the time required for storing data for each block in the management step as operation information. Method. 作動情報取得ステップは、管理ステップにおいてブロックごとにデータの消去に要した時間を示す消去時間情報を作動情報として取得する消去時間情報取得サブステップを有する請求項12から14のいずれか一に記載の不揮発性メモリシステムの動作方法。   15. The operation information acquisition step according to claim 12, further comprising an erasure time information acquisition substep of acquiring, as operation information, erasure time information indicating a time required for erasing data for each block in the management step. A method of operating a non-volatile memory system. 作動情報保持ステップにおいて、作動情報を不揮発性メモリ装置内に保持することを特徴とする不揮発性メモリシステムの動作方法であって、
作動情報保持ステップは、作動情報を不揮発性メモリ装置内の複数のブロックに対してエラー訂正符号を含ませて分散して記録する冗長分散記録サブステップを有する請求項12から16のいずれか一に記載の不揮発性メモリシステムの動作方法。
In the operation information holding step, the operation information is held in the nonvolatile memory device, and the operation method of the nonvolatile memory system is characterized in that:
The operation information holding step includes a redundant distributed recording substep for recording the operation information in a distributed manner including error correction codes for a plurality of blocks in the nonvolatile memory device. A method of operating the described non-volatile memory system.
JP2006143442A 2006-05-23 2006-05-23 Nonvolatile memory system Pending JP2007316779A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006143442A JP2007316779A (en) 2006-05-23 2006-05-23 Nonvolatile memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006143442A JP2007316779A (en) 2006-05-23 2006-05-23 Nonvolatile memory system

Publications (1)

Publication Number Publication Date
JP2007316779A true JP2007316779A (en) 2007-12-06

Family

ID=38850601

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006143442A Pending JP2007316779A (en) 2006-05-23 2006-05-23 Nonvolatile memory system

Country Status (1)

Country Link
JP (1) JP2007316779A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011070346A (en) * 2009-09-25 2011-04-07 Toshiba Corp Memory system
JP2012118839A (en) * 2010-12-02 2012-06-21 Fujitsu Ltd Access control device, error correction control method and storage device
JP2012133784A (en) * 2010-12-22 2012-07-12 Hitachi Global Storage Technologies Netherlands Bv Data management in flash memory using probability of charge disturbances
JP2013542533A (en) * 2010-10-27 2013-11-21 エルエスアイ コーポレーション Adaptive ECC technology for flash memory based data storage
US8804435B2 (en) 2011-12-09 2014-08-12 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device
EP2806362A1 (en) 2013-05-24 2014-11-26 Fujitsu Limited Information processing device, control circuit, computer-readable recording medium for control program, and control method
US9165682B2 (en) 2007-11-19 2015-10-20 Seagate Technology Llc Techniques for controlling recycling of blocks of memory
JP2020042326A (en) * 2018-09-06 2020-03-19 富士通株式会社 Memory controller apparatus, memory apparatus having memory controller apparatus, and control method
WO2024052993A1 (en) * 2022-09-06 2024-03-14 キオクシア株式会社 Memory system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216506A (en) * 2002-01-23 2003-07-31 Hitachi Ltd Storage device with flash memory and computer

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003216506A (en) * 2002-01-23 2003-07-31 Hitachi Ltd Storage device with flash memory and computer

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9921761B2 (en) 2007-11-19 2018-03-20 Seagate Technology Llc Techniques for controlling recycling of blocks of memory
US10579278B2 (en) 2007-11-19 2020-03-03 Seagate Technology Llc Techniques for controlling recycling of blocks of memory
US9165682B2 (en) 2007-11-19 2015-10-20 Seagate Technology Llc Techniques for controlling recycling of blocks of memory
US9323666B2 (en) 2007-11-19 2016-04-26 Seagate Technology Llc Techniques for controlling recycling of blocks of memory
US8347024B2 (en) 2009-09-25 2013-01-01 Kabushiki Kaisha Toshiba Memory system monitoring data erasing time or writing time
JP2011070346A (en) * 2009-09-25 2011-04-07 Toshiba Corp Memory system
JP2013542533A (en) * 2010-10-27 2013-11-21 エルエスアイ コーポレーション Adaptive ECC technology for flash memory based data storage
JP2012118839A (en) * 2010-12-02 2012-06-21 Fujitsu Ltd Access control device, error correction control method and storage device
US8839072B2 (en) 2010-12-02 2014-09-16 Fujitsu Limited Access control apparatus, storage apparatus, and method
JP2012133784A (en) * 2010-12-22 2012-07-12 Hitachi Global Storage Technologies Netherlands Bv Data management in flash memory using probability of charge disturbances
US8804435B2 (en) 2011-12-09 2014-08-12 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device
US9666299B2 (en) 2011-12-09 2017-05-30 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device
US9466370B2 (en) 2011-12-09 2016-10-11 Kabushiki Kaisha Toshiba Non-volatile semiconductor storage device
US9953716B2 (en) 2011-12-09 2018-04-24 Toshiba Memory Corporation Non-volatile semiconductor storage device
US10269436B2 (en) 2011-12-09 2019-04-23 Toshiba Memory Corporation Non-volatile semiconductor storage device
US10762969B2 (en) 2011-12-09 2020-09-01 Toshiba Memory Corporation Non-volatile semiconductor storage device
US11069414B2 (en) 2011-12-09 2021-07-20 Toshiba Memory Corporation Non-volatile semiconductor storage device
US11631468B2 (en) 2011-12-09 2023-04-18 Kioxia Corporation Non-volatile semiconductor storage device
EP2806362A1 (en) 2013-05-24 2014-11-26 Fujitsu Limited Information processing device, control circuit, computer-readable recording medium for control program, and control method
JP2020042326A (en) * 2018-09-06 2020-03-19 富士通株式会社 Memory controller apparatus, memory apparatus having memory controller apparatus, and control method
JP7177338B2 (en) 2018-09-06 2022-11-24 富士通株式会社 MEMORY CONTROLLER DEVICE, MEMORY DEVICE HAVING MEMORY CONTROLLER DEVICE, AND MEMORY CONTROL METHOD
WO2024052993A1 (en) * 2022-09-06 2024-03-14 キオクシア株式会社 Memory system

Similar Documents

Publication Publication Date Title
JP2007316779A (en) Nonvolatile memory system
KR100975164B1 (en) Internal maintenance schedule request for non-volatile memory system
JP5819610B2 (en) Method and apparatus for writing data to different storage devices
JP4734033B2 (en) Storage device
US8339881B2 (en) Techniques for increasing a lifetime of blocks of memory
US11127471B2 (en) Read retry threshold voltage selection
US8332696B2 (en) Defect management method for storage medium and system thereof
US8161354B2 (en) Flash memory controller having configuring unit for error correction code (ECC) capability and method thereof
JP2011503741A5 (en)
JP2011503768A5 (en)
US20160283319A1 (en) Data storage device and encoding method thereof
US10545810B2 (en) Method and apparatus for monitoring non-volatile memory read errors using background media scan
JP2012517068A (en) Memory device, memory management device, and memory management method
JP5343817B2 (en) Storage device
JP2009282923A (en) Semiconductor storage device and nonvolatile memory
US20090164869A1 (en) Memory architecture and configuration method thereof
JP5335779B2 (en) Semiconductor recording device
JP4332132B2 (en) Memory controller, flash memory system, and flash memory control method
JP2010256944A (en) Device, program and method for maintaining nand type flash memory
JP4818453B1 (en) Electronic device and data reading method
US8885406B2 (en) Memory device, memory control device, and memory control method
JP2005292925A (en) Memory controller, flash memory system, and control method for flash memory
JP7291640B2 (en) Semiconductor memory device and refresh method for semiconductor memory device
CN111158589B (en) Dynamic management method and device for storage array
US20210294526A1 (en) Storage device and method of controlling storage device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080806

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110630