JP2003323352A - Memory device - Google Patents

Memory device

Info

Publication number
JP2003323352A
JP2003323352A JP2002194084A JP2002194084A JP2003323352A JP 2003323352 A JP2003323352 A JP 2003323352A JP 2002194084 A JP2002194084 A JP 2002194084A JP 2002194084 A JP2002194084 A JP 2002194084A JP 2003323352 A JP2003323352 A JP 2003323352A
Authority
JP
Japan
Prior art keywords
area
memory device
unit
data
management
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.)
Granted
Application number
JP2002194084A
Other languages
Japanese (ja)
Other versions
JP3928500B2 (en
Inventor
Shinya Iguchi
慎也 井口
Junichi Maruyama
純一 丸山
Takeshi Nakamura
中村  剛
Kenji Kosakai
健司 小堺
Motoyasu Tsunoda
元泰 角田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2002194084A priority Critical patent/JP3928500B2/en
Publication of JP2003323352A publication Critical patent/JP2003323352A/en
Application granted granted Critical
Publication of JP3928500B2 publication Critical patent/JP3928500B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To realize an efficient and quick defect substitution method in a nonvolatile memory and a volatile memory including a defective area. <P>SOLUTION: The nonvolatile or volatile memory, which mounts thereon a memory cell for recording values, a function of recording and managing a defect status included in the memory cell, and a function of interfacing the function with a host system, has a means for partitioning the memory cell into a plurality of areas and managing defects separately in each area, a means for referring to the management information to access a substitute for a defective area upon access by the host system, and a means for using the means to make the memory cell including defects apparently indefectible to the host system. <P>COPYRIGHT: (C)2004,JPO

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は不良領域を含む揮発
性或いは不揮発性記録部を使用したメモリにおいて、信
頼性が高くかつ高速で安価なメモリシステムの構築に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to the construction of a highly reliable, high-speed and inexpensive memory system in a memory using a volatile or non-volatile recording portion including a defective area.

【0002】[0002]

【従来の技術】メモリ装置において、内部のメモリセル
へのアクセス単位が複数バイトを一まとめとしたブロッ
ク単位でアクセス可能でかつ不良ブロックを含む場合、
それらを管理するために、特開2000-11677号公報に記載
のように、メモリ内に通常領域と、その領域に含まれる
不良領域を代替するためのスペア領域を設け、スペア領
域上の各ブロックと、それが代替しているデータ領域上
の不良ブロックの対応付けを管理する不良管理情報を構
成する。これによって、データ領域にアクセスした場
合、不良管理情報を参照し、アクセスアドレスが不良ブ
ロックか判定を行い、不良ブロックの場合は、対応する
スペア領域上のブロックをアクセスすることで、不良代
替を行う。
2. Description of the Related Art In a memory device, when an access unit to an internal memory cell is accessible in a block unit in which a plurality of bytes are collected and includes a defective block,
In order to manage them, as described in JP-A-2000-11677, a normal area and a spare area for substituting a defective area included in the area are provided in the memory, and each block on the spare area is provided. And defective management information for managing the association of defective blocks on the data area that it substitutes. With this, when the data area is accessed, the defect management information is referred to determine whether the access address is a defective block, and if the block is a defective block, the block on the corresponding spare area is accessed to perform defective replacement. .

【0003】また、特開平6-124596号公報に記載のよう
に、データ領域上の各ブロックに物理アドレスと論理ア
ドレスを割り当て、その対応付けを行う管理情報を用意
する。そして、ホストがデータの書き込みを行う論理ア
ドレスを指定すると、新規に消去状態のブロックへデー
タを記録しこの物理アドレスと論理アドレスを対応付け
る。以前にこの論理アドレスに割り当てられていた物理
アドレスに対応するブロック内の古いデータは消去す
る。
Further, as described in Japanese Patent Laid-Open No. 6-124596, a physical address and a logical address are assigned to each block in the data area, and management information for associating them is prepared. Then, when the host specifies a logical address for writing data, the data is newly recorded in the erased block and the physical address and the logical address are associated with each other. The old data in the block corresponding to the physical address previously assigned to this logical address is erased.

【0004】[0004]

【発明が解決しようとする課題】上記従来技術では、通
常領域のアクセス時、毎回スペア領域との対応付け情報
をすべて参照する必要があり、また、通常領域全域の不
良ブロックを一括してスペア領域に代替するため、例え
ば通常領域が巨大な場合、スペア領域も巨大になり、対
応付け情報も膨大になる。このため、不良検索に時間が
かかる。
In the above conventional technique, it is necessary to refer to all the correspondence information with the spare area every time the normal area is accessed, and the defective blocks in the entire normal area are collectively referred to as the spare area. For example, when the normal area is huge, the spare area also becomes huge and the correspondence information becomes huge. Therefore, it takes time to search for defects.

【0005】さらに上記従来技術では、不良ブロックが
通常領域内に局所集中的に発生した場合でも、通常領域
のアクセス時、スペア領域との対応付け情報をすべて参
照する必要があるため、局所集中的な不良発生が通常領
域全域のアクセス時間に影響を及ぼす。さらに上記従来
技術では、データの消去書込み回数を分散するために、
全データブロックにおける物理アドレスと論理アドレス
の対応付け情報が必要になるため、テーブル検索時間と
管理情報が膨大になる。このためアクセス時間が遅くな
り、大きな管理領域が必要になる。
Further, in the above-mentioned conventional technique, even if defective blocks are locally concentrated in the normal area, it is necessary to refer to all the correspondence information with the spare area when the normal area is accessed. The occurrence of such a defect affects the access time over the entire normal area. Furthermore, in the above-mentioned conventional technique, in order to disperse the number of times of erasing and writing data,
Since the correspondence information between the physical address and the logical address in all the data blocks is required, the table search time and management information become enormous. Therefore, the access time becomes slow and a large management area is required.

【0006】本発明の目的は、通常領域と代替領域が巨
大になり、管理情報量が増大しても、通常領域に対する
アクセス時間の低下を抑制可能なメモリ装置を提供す
る。
An object of the present invention is to provide a memory device capable of suppressing a decrease in access time to the normal area even when the normal area and the alternative area become huge and the management information amount increases.

【0007】本発明の別の目的は、通常領域内に局所集
中的に不良ブロックが発生しても、その付近以外の通常
領域のアクセス速度に影響を与えない高速で効率的なメ
モリ装置を提供する。
Another object of the present invention is to provide a high-speed and efficient memory device which does not affect the access speed of normal areas other than the vicinity thereof even if defective blocks are locally concentrated in the normal area. To do.

【0008】本発明の別の目的は、データの消去書き込
み回数を分散するための管理情報を削減し、アクセス時
の管理情報検索時間を削減することで、効率的に書き込
みを行うことが可能なメモリ装置を提供する。
Another object of the present invention is to reduce the management information for distributing the number of times of erasing and writing of data, and to reduce the management information search time at the time of access, thereby enabling efficient writing. A memory device is provided.

【0009】[0009]

【課題を解決するための手段】本発明の目的を達成する
ために、不良ブロックを含むメモリ装置において、メモ
リ上の通常領域と代替領域のアクセス単位であるブロッ
クを複数個一まとめにしたセグメントを構成し、通常領
域のセグメントとスペア領域のセグメントを各々一対一
に対応させ管理する手段と、セグメント全域に不良が発
生した場合は、代替セグメントをスペア領域に設け、セ
グメントごと代替セグメントへ代替する手段とを設け
た。
In order to achieve the object of the present invention, in a memory device including a defective block, a segment in which a plurality of blocks which are access units of a normal area and an alternative area on the memory are grouped together A means for configuring and managing the segments in the normal area and the segments in the spare area in a one-to-one correspondence, and a means for providing a replacement segment in the spare area when a defect occurs in the entire segment and replacing each segment with the replacement segment And.

【0010】本発明の別の目的を達成するために、各セ
グメントの先頭からのオフセット値aが等しい各セグメ
ントのそれぞれのデータブロックをまとめて管理するた
めの管理情報と、個々のデータブロックへ消去書込の度
に記録される消去書込回数とを用いて、セグメントm内
のオフセットaにある特定のデータブロックの消去書込
回数が閾値に達すると、オフセットaに対応する前期管
理情報の値nを変化させ、その管理情報に基づき、セグ
メントmのオフセットaのデータブロックへ書込む内容
を、セグメントn+mのオフセットaにあるデータブロック
へ記録するする手段と、セグメントmのオフセットaのデ
ータブロックの内容の読み出しを行う際、オフセットa
の管理情報の値nを用いて、セグメントn+mのオフセット
aのデータブロックの内容を読み出す手段とを設けた。
In order to achieve another object of the present invention, management information for collectively managing each data block of each segment having the same offset value a from the beginning of each segment, and erasing into individual data blocks. When the number of times of erasing and writing of a specific data block at the offset a in the segment m reaches a threshold value by using the number of times of erasing and writing recorded at each writing, the value of the previous management information corresponding to the offset a and a means for recording the contents to be written in the data block at the offset a of the segment m on the data block at the offset a of the segment n + m based on the management information, and the data at the offset a of the segment m. Offset a when reading the contents of the block
Offset of segment n + m using the value n of the management information of
and means for reading the contents of the data block of a.

【0011】[0011]

【発明の実施の形態】以下、本発明の実施形態について
説明する。
BEST MODE FOR CARRYING OUT THE INVENTION Embodiments of the present invention will be described below.

【0012】図1は、本発明の不良代替処理の概念説明
図である。フラッシュメモリ100は本発明を適用する
フラッシュメモリのデータ構成を示す。また、ホストシ
ステム120はフラッシュメモリ100へアクセスする
装置を示す。フラッシュメモリ100は、図示の様に、
フラッシュメモリセル113へデータを保持する。このフ
ラッシュメモリセル113は、通常、複数バイトを一ま
とめにしたブロックという単位で消去、書き込み、読み
出しが行われる。ブロックには、正常に使用可能な良ブ
ロックと、製造時の不具合等により不良化した不良ブロ
ックが存在する。本発明では、フラッシュメモリセル1
13を通常領域108と代替領域109の2種類の領域に分け
て管理する。通常領域は、ホストシステムのデータを保
存する。また、代替領域は通常領域内の不良ブロックを
置き換えるために使用する。それぞれの領域において、
ブロックをn個合わせたものをセグメントと定義し、各
領域が複数のセグメントから構成されているとして扱
う。
FIG. 1 is a conceptual explanatory view of the defect replacement processing of the present invention. The flash memory 100 shows the data structure of the flash memory to which the present invention is applied. The host system 120 is a device that accesses the flash memory 100. The flash memory 100, as shown,
Data is held in the flash memory cell 113. In the flash memory cell 113, normally, erasing, writing and reading are performed in a unit called a block in which a plurality of bytes are integrated. There are good blocks that can be used normally and bad blocks that have become defective due to defects during manufacturing. In the present invention, the flash memory cell 1
13 is divided into two areas, a normal area 108 and an alternative area 109, and managed. The normal area stores data of the host system. The substitute area is used to replace the defective block in the normal area. In each area,
A combination of n blocks is defined as a segment, and each area is treated as consisting of multiple segments.

【0013】メモリ物理アドレス102は、フラッシュ
メモリセル113の先頭から順次ブロックに割り当てられ
るアドレスである。オフセット101は各セグメントの先
頭を0として割り当てられるアドレスで、各セグメント
の先頭からのオフセット値を示す。
The memory physical address 102 is an address sequentially assigned to blocks from the beginning of the flash memory cell 113. The offset 101 is an address assigned with the head of each segment as 0, and indicates an offset value from the head of each segment.

【0014】通常領域108のデータセグメントと代替領
域109の代替セグメントは一対一に対応する。すなわ
ち、データセグメントnと代替セグメントnが対応する。
この対応付け情報は不良管理テーブル114へ保存され
る。
The data segment in the normal area 108 and the alternative segment in the alternative area 109 have a one-to-one correspondence. That is, the data segment n corresponds to the alternative segment n.
This association information is stored in the defect management table 114.

【0015】不良管理テーブル114は、セグメントご
との対応付け情報を保持する。すなわちデータセグメン
トnと代替セグメントnの対応付け情報は、セグメントn
管理情報111として不良管理テーブル114へ保持さ
れる。
The defect management table 114 holds correspondence information for each segment. That is, the correspondence information between the data segment n and the alternative segment n is the segment n.
The management information 111 is held in the defect management table 114.

【0016】セグメント管理情報内のエントリ117は、
対応する代替セグメント内の各ブロックの状態を示す。
例えば、先頭エントリは、代替セグメント内の先頭ブロ
ックの状態を示す。エントリを構成する情報について説
明する。良不良フラグ110は対応する代替セグメントが
良ブロックか不良ブロックかを示す。代替元論理アドレ
ス112は、このエントリに対応するブロックが代替す
る、通常領域内のブロックのオフセットを示す。例え
ば、代替セグメント0の先頭ブロックは、データセグメ
ント0内のオフセット2の不良ブロックを代替するた
め、不良管理テーブル114内のセグメント0管理情報の先
頭エントリの代替元論理アドレスに0002hが記録され
る。通常、オフセット101はメモリ物理アドレスと比
較して、アドレス空間が小さいため、代替元論理アドレ
ス情報量は小さくなる。尚、代替処理とは、不良化した
領域に対応する正常領域を用意しておき、不良領域の変
わりにアクセスするようにすることで、正常なアクセス
を保証する処理を示す。
The entry 117 in the segment management information is
The state of each block in the corresponding alternative segment is shown.
For example, the head entry indicates the status of the head block in the alternative segment. The information constituting the entry will be described. The good / bad flag 110 indicates whether the corresponding alternative segment is a good block or a bad block. The substitution source logical address 112 indicates the offset of the block in the normal area that the block corresponding to this entry substitutes. For example, since the head block of the alternative segment 0 replaces the bad block at offset 2 in the data segment 0, 0002h is recorded in the replacement source logical address of the head entry of the segment 0 management information in the failure management table 114. Usually, the offset 101 has a smaller address space than the physical address of the memory, and therefore the amount of information of the replacement source logical address is small. The alternative process is a process for ensuring a normal access by preparing a normal area corresponding to a defective area and making an access instead of the defective area.

【0017】上記構成のフラッシュメモリ100は、ア
ドレス変換処理107を介して、ホストシステム120
へホスト空間123を提供する。この空間においてホス
ト論理アドレス121は、フラッシュメモリ100内の
メモリ物理アドレス102と対応するが、アドレス変換
処理107により、不良ブロックが代替されるため、ホ
スト空間123では全領域が良ブロックで構成される。
The flash memory 100 having the above-mentioned structure is provided with a host system 120 through an address conversion process 107.
Host space 123 is provided. In this space, the host logical address 121 corresponds to the memory physical address 102 in the flash memory 100, but since the defective block is replaced by the address conversion processing 107, the host space 123 is entirely configured with good blocks. .

【0018】図2はこのアドレス変換処理107の流れ
を示すフローチャートである。
FIG. 2 is a flow chart showing the flow of the address conversion processing 107.

【0019】ホストシステム120がフラッシュメモリ
100へ、アクセス対象ホスト論理アドレスを送信する
(ステップ201)。フラッシュメモリ100はホスト論理
アドレスに対応する通常領域内のデータセグメントとオ
フセット値を計算する(ステップ202)。この方法とし
て例えば、ホスト論理アドレスがメモリ物理アドレスと
一対一に対応しているため、メモリ物理アドレスとデー
タセグメント及びオフセットの関係を利用する方法が考
えられる。次に、不良管理テーブルを参照し対象データ
セグメントのセグメント管理情報内から、アクセスする
オフセットが代替登録されていないか検索する(ステッ
プ203、ステップ204)。代替登録されている場合は、対
応する代替セグメント内の対応ブロックを指定する(ス
テップ206)。登録されていない場合は、データセグメン
ト内の対応ブロックを指定する(ステップ205)フラッシ
ュメモリ100が指定したブロックに対してホストシス
テム120がアクセスを行う(207)。以上の処理を行う
ことで、ホストシステム120は、フラッシュメモリ1
00を擬似的に不良ブロックが一切含まれないメモリと
してアクセスすることが可能になる。
The host system 120 sends the access target host logical address to the flash memory 100.
(Step 201). The flash memory 100 calculates the data segment in the normal area corresponding to the host logical address and the offset value (step 202). As this method, for example, since the host logical address has a one-to-one correspondence with the memory physical address, a method of utilizing the relationship between the memory physical address, the data segment, and the offset can be considered. Next, referring to the defect management table, the segment management information of the target data segment is searched for whether or not the offset to be accessed is registered as a substitute (step 203, step 204). If the substitute registration is made, the corresponding block in the corresponding substitute segment is designated (step 206). If the block is not registered, the corresponding block in the data segment is designated (step 205), and the host system 120 accesses the block designated by the flash memory 100 (207). By performing the above processing, the host system 120 becomes the flash memory 1
It is possible to access 00 as a memory that does not include any defective block in a pseudo manner.

【0020】本発明では、上記不良代替処理に加え、ホ
ストシステム120からの消去書き込みを分散するため
の手段を設けている。以下これについて説明する。図3
はこの方式概念の説明図である。
In the present invention, in addition to the above defect replacement processing, means for distributing erase / write from the host system 120 is provided. This will be described below. Figure 3
Is an explanatory view of this system concept.

【0021】データセグメントの各ブロックに、消去書
き込みが行われた回数を記録する。そしてウェアレベリ
ング管理テーブル302を用意する。このテーブルは不
良代替後のフラッシュメモリ空間であるフラッシュメモ
リ論理空間300において、データセグメントの同一オ
フセットごとにセグメントシフト数というデータを管理
する。このデータは、あるセグメントのオフセットに対
応すべきデータが、異なるセグメントの同一オフセット
に存在する場合、そのセグメント数の差分を記録する。
すなわち、セグメントNのオフセットnにあるべきデータ
が、セグメントN+Mのオフセットnに存在する場合、セグ
メントシフト数はMになる。また、この値は、全セグメ
ントの同一オフセットに対応するため、例えば、オフセ
ットnのセグメントシフト数が1の場合、全セグメント
のオフセットnの値が1セグメント分ずれていることを示
す。
In each block of the data segment, the number of times of erasing and writing is recorded. Then, the wear leveling management table 302 is prepared. This table manages data called the segment shift number for each same offset of the data segment in the flash memory logical space 300 which is the flash memory space after defective replacement. When the data that should correspond to the offset of a certain segment exists at the same offset of a different segment, this data records the difference in the number of segments.
That is, when the data that should be at the offset n of the segment N exists at the offset n of the segment N + M, the segment shift number becomes M. Further, since this value corresponds to the same offset of all the segments, for example, when the segment shift number of the offset n is 1, it indicates that the value of the offset n of all the segments is shifted by one segment.

【0022】以下、これらの情報を利用した消去書込み
分散について説明する。
The erase / write distribution utilizing these pieces of information will be described below.

【0023】図3のステップ1は、ホストシステム12
0がフラッシュメモリ100へ消去書き込みを行う前の
状態である。ホストシステム120がデータセグメント
1のオフセット1のデータBの更新をフラッシュメモリ10
0へ指示するとデータBの書込み回数が1増加する。こ
のとき、データBの書込み回数が書込み分散処理を起動
する閾値mに達すると、フラッシュメモリ100は、ウ
ェアレベリング管理テーブル302内のセグメントシフ
ト数304の値を更新する。この値の更新方法として
は、単に1を加える方法、全セグメントの同一オフセッ
ト内で一番書込み回数が少ないブロックへデータBのデ
ータが格納されるようにオフセット値を計算する方法な
どが考えられる。本例では、現在の値に1を加えた場合
を示している。この結果、ステップ3に示すように、全
セグメントのオフセット1に存在するデータが全て1セ
グメント分後方にシフトされて記録し直される。この結
果、データBの更新が集中しても、内部的には複数のブ
ロックに対して分散して書き込まれるため、消去書込み
の分散処理を実現できる。また、全セグメントの同一オ
フセットに対して、1つのセグメントシフト数を用意す
ればよいため、ウェアレベリング管理テーブル302サイ
ズを削減することが可能になる。
The step 1 in FIG.
0 is a state before erasing and writing to the flash memory 100. Host system 120 is a data segment
Update the data B at offset 1 of 1 to flash memory 10
When the instruction is set to 0, the number of times of writing the data B is increased by 1. At this time, when the number of times of writing the data B reaches the threshold value m for activating the write distribution process, the flash memory 100 updates the value of the segment shift number 304 in the wear leveling management table 302. As a method of updating this value, a method of simply adding 1 or a method of calculating the offset value so that the data of the data B is stored in the block having the smallest number of times of writing in the same offset of all the segments can be considered. In this example, the case where 1 is added to the current value is shown. As a result, as shown in step 3, all the data existing at offset 1 of all the segments are shifted backward by one segment and re-recorded. As a result, even if the update of the data B is concentrated, the data is internally distributed and written in a plurality of blocks, so that the distributed processing of erase and write can be realized. Further, since it is only necessary to prepare one segment shift number for the same offset of all segments, it is possible to reduce the size of the wear leveling management table 302.

【0024】図4は、本発明を適用した不揮発性メモリ
400の内部構成の一例を示している。当該メモリ装置
401は、ホストシステム440とホスト I/F441を
介して接続される。ホストI/F441はI/F切り替え信号
437によって切り替えることが可能である。ホストI/
F441の例としては、NAND形/AND形フラッシュメモリI
/F、SRAMI/F SDRAM I/Fが考えられる。
FIG. 4 shows a nonvolatile memory to which the present invention is applied.
An example of the internal structure of 400 is shown. The memory device 401 is connected to the host system 440 via the host I / F 441. The host I / F 441 can be switched by the I / F switching signal 437. Host I /
As an example of F441, a NAND type / AND type flash memory I
/ F, SRAM I / F SDRAM I / F is considered.

【0025】不揮発性メモリ400は、ホストシステム
440とのI/Fを切り替えるI/F切り替え部437、ホス
トシステム440との間でI/F制御を行うI/F制御部43
0、情報の記録を行うメモリセル部401、メモリセル
部401内の不良ブロック管理を行う管理部410から
構成される。尚、管理部410はメモリセル部401の
分散書き込み処理などの制御を行う場合もある。
The nonvolatile memory 400 includes an I / F switching unit 437 for switching I / F with the host system 440 and an I / F control unit 43 for performing I / F control with the host system 440.
0, a memory cell unit 401 that records information, and a management unit 410 that manages a defective block in the memory cell unit 401. The management unit 410 may control the distributed writing process of the memory cell unit 401.

【0026】I/F制御部420とメモリセル部401はA
ND I/F-1 431、およびAND I/F-2 432で接続さ
れている。ここでAND I/FはAND形フラッシュメモリ制御
用I/F仕様のことを示す。尚、このI/FはNAND形フラッシ
ュメモリ制御用I/F等、その他のI/Fを適用することも可
能である。
The I / F control unit 420 and the memory cell unit 401 are
It is connected by ND I / F-1 431 and AND I / F-2 432. Here, AND I / F indicates an I / F specification for controlling an AND type flash memory. It should be noted that this I / F can also be applied to other I / Fs such as NAND flash memory control I / F.

【0027】メモリセル部401はホストシステム44
0から直接AND I/F-1 431を介して制御することも
可能である。
The memory cell section 401 is the host system 44.
It is also possible to control directly from 0 via AND I / F-1 431.

【0028】管理部410はI/F制御部430と専用I/
F 435で接続されている。また、メモリセル部40
1をAND I/F-3 433を介して制御可能な上、メモリセ
ル部401のバッファ405上のデータをSRAM I/F434を介
して直接アクセスすることも可能である。
The management unit 410 includes an I / F control unit 430 and a dedicated I / F.
Connected with F 435. In addition, the memory cell unit 40
1 can be controlled via the AND I / F-3 433, and data on the buffer 405 of the memory cell unit 401 can be directly accessed via the SRAM I / F 434.

【0029】制御部403は、さらに不揮発性記録媒体
であるフラッシュメモリセル402、フラッシュメモリ
へ書き込むデータを一時的に記録するSRAMで構成された
バッファ405、AND I/F 407を介した外部回路か
らの指示により、バッファ405とフラッシュメモリセ
ル402を制御する制御部403、制御部403への制
御信号を切り替える切り替え部404から構成される。
The control unit 403 further includes a flash memory cell 402, which is a non-volatile recording medium, a buffer 405 composed of SRAM for temporarily recording data to be written in the flash memory, and an external circuit via an AND I / F 407. The control unit 403 controls the buffer 405 and the flash memory cell 402, and the switching unit 404 switches a control signal to the control unit 403 according to the instruction.

【0030】図5は、管理部410の構成の一例を示し
ている。
FIG. 5 shows an example of the configuration of the management unit 410.

【0031】ECC(Error correcting code;エラー訂正
符号)506はメモリセル部401へデータ書き込む際
にはECCを生成して付加し、データを読み出す場合にはE
CC計算を行い、エラー検出訂正を行うことで、データの
信頼性を高めるために使用される。
An ECC (Error correcting code) 506 generates and adds an ECC when writing data to the memory cell unit 401, and an E when writing data.
It is used to increase the reliability of data by performing CC calculation and error detection and correction.

【0032】I/Fレジスタ505はI/F制御部420と
の間で情報を送受信するために使用される。
The I / F register 505 is used for transmitting / receiving information to / from the I / F control unit 420.

【0033】プログラマブルシーケンサ500は管理部
410内の各回路を制御し代替処理などのシーケンス処
理を実行する。
The programmable sequencer 500 controls each circuit in the management unit 410 and executes sequence processing such as substitution processing.

【0034】シーケンスROM501は、プログラマブル
シーケンサ500が実行するシーケンスコードを記録す
る。ここに記録されるシーケンスコードを変更すること
で様々な処理を追加、変更することが可能である。ま
た、シーケンスROM501の変わりに、シーケンスRAMを
搭載し、不揮発性メモリ400起動時にメモリセル部か
らシーケンスコードを読み込み可能にすることで、不揮
発性メモリが製造された後も、フラッシュメモリセル4
02に記録されているシーケンスコードに改変を加える
ことが可能になる。
The sequence ROM 501 records the sequence code executed by the programmable sequencer 500. Various processes can be added or changed by changing the sequence code recorded here. Further, instead of the sequence ROM 501, a sequence RAM is mounted so that the sequence code can be read from the memory cell portion when the nonvolatile memory 400 is started, so that the flash memory cell 4 can be manufactured even after the nonvolatile memory is manufactured.
It is possible to modify the sequence code recorded in 02.

【0035】Work RAM502は、プログラマブルシーケ
ンサ500が一時的に値を保存したり、メモリセル部4
01管理用の管理データを保持するために使用される。
In the work RAM 502, the programmable sequencer 500 temporarily stores a value and the memory cell unit 4
01 Used to hold management data for management.

【0036】制御レジスタ群503は前述処理に特化さ
れた制御用レジスタ群が格納される。これはプログラマ
ブルシーケンサ500が動作中に使用する。
The control register group 503 stores a control register group specialized for the above processing. It is used while the programmable sequencer 500 is in operation.

【0037】図6は、不揮発性メモリ400のアドレス
構成を示す。
FIG. 6 shows an address configuration of the non-volatile memory 400.

【0038】不揮発性メモリ400最下位アドレスを
「0000」、ホストシステム440がアクセス可能な
上限値をHMAX602と定義する、この領域は前述の通常
領域108に対応する。この領域は複数の同一の大きさ
を持つデータセグメントから構成される。不揮発性メモ
リ400の最上アドレスをFMAX603と定義する。HMAX
602からFMAX603の間を管理領域601と定義す
る。管理領域601はさらに3種の領域に分割される。
代替領域612は、複数の代替セグメントから構成され
る。各代替セグメントサイズは、データセグメントに含
まれる不良ブロック数及び発生が予測される不良ブロッ
ク数に最適化された大きさになるため、各代替セグメン
トごとにサイズは異なる。この領域は、全データセグメ
ントに共通で使用する。管理テーブル領域613は、前
述の不良管理テーブル114及びウェアレベリング管理
テーブル302を保持する領域である。
The lowest address of the non-volatile memory 400 is defined as "0000", and the upper limit accessible by the host system 440 is defined as HMAX602. This area corresponds to the above-mentioned normal area 108. This area is composed of a plurality of data segments having the same size. The highest address of the non-volatile memory 400 is defined as FMAX603. HMAX
A management area 601 is defined between 602 and FMAX 603. The management area 601 is further divided into three areas.
The alternative area 612 is composed of a plurality of alternative segments. Since the size of each alternative segment is optimized for the number of bad blocks included in the data segment and the number of bad blocks predicted to occur, the size of each alternative segment is different. This area is commonly used for all data segments. The management table area 613 is an area for holding the defect management table 114 and the wear leveling management table 302 described above.

【0039】図7は管理テーブルの構成例を示してい
る。
FIG. 7 shows an example of the structure of the management table.

【0040】管理テーブル701は、不良管理テーブル
701とウェアレベリング管理テーブル706から構成
される。不良管理テーブル701は、図1で示した不良
管理情報を格納する。セグメントスワップ情報702
は、セグメント内の全てのブロックが不良化した場合
に、其のセグメント自体を別のセグメントで代替する場
合の情報を格納するために使用される。これは、下記情
報から構成される。不良セグメントアドレス709:不良
化したセグメントの番号を記録する。代替先セグメント
アドレス710:このセグメントを代替するセグメントの
番号を記録する。
The management table 701 comprises a defect management table 701 and a wear leveling management table 706. The defect management table 701 stores the defect management information shown in FIG. Segment swap information 702
Is used to store information when another segment replaces itself if all blocks in the segment have failed. It consists of the following information: Defective segment address 709: The number of the defective segment is recorded. Substitute destination segment address 710: Records the number of the segment that substitutes this segment.

【0041】代替セグメントオフセット711と代替セ
グメント情報715は、代替セグメントの情報を管理す
る。代替セグメントのサイズは対応するセグメントの不
良ブロック数に応じて代替セグメントごとに可変長にな
るため、管理データ自体も可変長になる。したがって、
代替セグメントオフセット情報711で代替セグメント
情報715上のセグメント毎の不良管理データの先頭位
置を示し、エントリ数714でセグメント内に含まれる
不良代替用ブロック数を示す。このエントリ数714
は、前述のセグメント毎の不良ブロック数計算手段を用
いて計算された値を使用する。不良管理データ自体は、
代替セグメント情報715内に置かれ、各セグメントに
対応するデータは、先頭に管理アドレス空間上のこのセ
グメントに対応する代替セグメントの先頭アドレス71
6、その後には、代替セグメントに含まれるブロックの
属性がエントリ717として記録される。例えば、代替
セグメントの先頭ブロックの情報はエントリ0に記録さ
れる。エントリの内容としては、例えば、代替セグメン
トの先頭からのオフセット値、このブロック自体が正常
か不良かの判定フラグなどが考えられる。
The alternative segment offset 711 and the alternative segment information 715 manage the information of the alternative segment. Since the size of the alternative segment has a variable length for each alternative segment according to the number of defective blocks in the corresponding segment, the management data itself also has a variable length. Therefore,
The alternative segment offset information 711 indicates the start position of the defect management data for each segment on the alternative segment information 715, and the number of entries 714 indicates the number of defective replacement blocks included in the segment. Number of this entry 714
Uses the value calculated using the above-mentioned defective block number calculation means for each segment. The defect management data itself is
The data placed in the alternative segment information 715 and corresponding to each segment has the start address 71 of the alternative segment corresponding to this segment in the management address space at the beginning.
6. After that, the attribute of the block included in the alternative segment is recorded as an entry 717. For example, the information of the first block of the alternative segment is recorded in the entry 0. The content of the entry may be, for example, an offset value from the beginning of the alternative segment, a flag for determining whether the block itself is normal or defective, or the like.

【0042】ウェアレベリング管理情報718は、ウェ
アレベリング管理テーブルに保存される。この情報は、
全データセグメントのオフセットごとの前述のセグメン
トシフト数を記録する。
The wear leveling management information 718 is stored in the wear leveling management table. This information is
Record the aforementioned segment shift number for each offset of all data segments.

【0043】以上で述べた構成を用いた不揮発性メモリ
400の基本動作の一例を説明する。
An example of the basic operation of the non-volatile memory 400 having the above-mentioned configuration will be described.

【0044】図8は、不揮発性メモリ400起動時の動
作例を示すフローチャートである。
FIG. 8 is a flowchart showing an operation example when the nonvolatile memory 400 is activated.

【0045】電源が挿入されると各回路が初期化される
(ステップ801)。初期化が完了するとI/F制御部42
0が初期化コマンドを管理回路410内のプログラマブ
ルシーケンサ500に発行する(ステップ802)。プ
ログラマブルシーケンサ500は、管理部410内の設
定情報を初期化し、初期管理テーブル読み込み位置を設
定する(ステップ803)。初期化処理が終了すると、プ
ログラマブルシーケンサ500は、管理テーブル読込コ
マンドをメモリセル部401に発行する(ステップ80
5)。メモリセル部402はフラッシュメモリセル40
1よりデータ読み出しを行う(ステップ806)。その
後、メモリセル部401と管理部410のプログラマブ
ルシーケンサ500は管理テーブル情報を管理部410
内のWorkRAM502へ転送する(ステップ807)。プロ
グラマブルシーケンサ500は、管理テーブル情報を検
査し(ステップ808)、このテーブルが使用可能なら処
理を終了する。もし、管理テーブル情報が不良なら、次
のアクセスアドレスを設定して、管理テーブル読込以下
の手順を繰り返す(ステップ804)。
When the power supply is inserted, each circuit is initialized.
(Step 801). When the initialization is completed, the I / F control unit 42
0 issues an initialization command to the programmable sequencer 500 in the management circuit 410 (step 802). The programmable sequencer 500 initializes the setting information in the management unit 410 and sets the initial management table read position (step 803). When the initialization process ends, the programmable sequencer 500 issues a management table read command to the memory cell unit 401 (step 80).
5). The memory cell section 402 is a flash memory cell 40.
Data is read from 1 (step 806). Then, the programmable sequencer 500 of the memory cell unit 401 and the management unit 410 stores the management table information in the management unit 410.
The data is transferred to the WorkRAM 502 inside (step 807). The programmable sequencer 500 inspects the management table information (step 808), and if this table is usable, the processing ends. If the management table information is defective, the next access address is set, and the following procedure for reading the management table is repeated (step 804).

【0046】図9は、不揮発性メモリ400からのデー
タリード時の動作例を示すフローチャートである。ホス
トシステム440がリードコマンドを不揮発性メモリ4
00へ発行すると、I/F制御部420がコマンドを受け
る(ステップ900)。同様にホストシステム440が
リードアドレスSAを不揮発性メモリ400へ発行する
(ステップ901)。I/F制御部420はリードアドレス
SAを受け取ると、リードコマンドとリードアドレスS
Aを管理部410のプログラマブルシーケンサ400へ
発行する(ステップ902、ステップ903)。リードコ
マンドを受け取った管理部500はリードアドレスSAか
らセグメント番号とオフセット値を抽出した後、ウエア
レベリング処理を行いアクセス先アドレスを計算する
(ステップ904)。続いて、管理テーブル700から対
応するセグメント情報を選択する(ステップ905)。こ
の後、代替セグメント情報715と先に計算したオフセ
ット値を比較し、不良ブロック検索を行う(ステップ9
06)。比較の結果、SAが不良ブロックを示していれ
ば、対応する代替アドレスをSA'にセットする(ステップ
907)。もし正常ブロックを示していれば、SAをSA'に
代入する(ステップ908)。管理部410は、リードコ
マンドをメモリセル部110に発行し(ステップ90
9)、続いてSA'をメモリセル部401へ発行する(ステ
ップ910)。メモリセル部401はSA'をアクセスアド
レスとしてフラッシュメモリセル401からデータ読出
を行う(ステップ911)。データリードが完了する
と、メモリセル部401は、データリード完了をI/F制
御部420へ通知する(ステップ912)。この方法とし
ては、例えばメモリセル部401がレディビジー信号を
出力し、処理中はビジーを通知し、処理が終了すればレ
ディーを通知する方法が考えられる。続いて、I/F制御
部420はメモリセル部110からデータリードを行い
(ステップ913)、そのままホストシステム440へ
データ転送を行う(ステップ914)。
FIG. 9 is a flow chart showing an operation example at the time of reading data from the non-volatile memory 400. The host system 440 sends the read command to the nonvolatile memory 4
When issued to 00, the I / F control unit 420 receives the command (step 900). Similarly, the host system 440 issues the read address SA to the nonvolatile memory 400.
(Step 901). When the I / F control unit 420 receives the read address SA, the read command and the read address S
A is issued to the programmable sequencer 400 of the management unit 410 (step 902, step 903). Upon receiving the read command, the management unit 500 extracts the segment number and offset value from the read address SA and then performs wear leveling processing to calculate the access destination address.
(Step 904). Then, the corresponding segment information is selected from the management table 700 (step 905). Then, the alternative segment information 715 is compared with the previously calculated offset value to search for a bad block (step 9).
06). If SA indicates a bad block as a result of the comparison, the corresponding alternative address is set in SA '(step 907). If it indicates a normal block, SA is substituted for SA '(step 908). The management unit 410 issues a read command to the memory cell unit 110 (step 90
9), and then SA 'is issued to the memory cell unit 401 (step 910). The memory cell unit 401 reads data from the flash memory cell 401 using SA 'as an access address (step 911). When the data read is completed, the memory cell unit 401 notifies the I / F control unit 420 of the data read completion (step 912). As this method, for example, a method in which the memory cell unit 401 outputs a ready / busy signal, notifies busy during processing, and notifies ready when processing is completed is considered. Then, the I / F control unit 420 reads data from the memory cell unit 110 (step 913) and transfers data to the host system 440 as it is (step 914).

【0047】ホストシステム440と不揮発性メモリ4
01のアクセス調停について、もし不揮発性メモリ40
1へデータリードコマンドを発行してから、データ転送
を開始するまでの間が一定時間なら、ホストシステム4
40はその待ち時間をカウンタなどでカウントすること
が可能である。もし可変なら、レディビジー信号を不揮
発性メモリ40が出力しホストシステム440がその信
号をモニタリングする方法等が考えられる。
Host system 440 and non-volatile memory 4
01 access arbitration, if the nonvolatile memory 40
If the time between the issuance of a data read command to 1 and the start of data transfer is constant, the host system 4
40 can count the waiting time with a counter or the like. If it is variable, a method in which the non-volatile memory 40 outputs the ready / busy signal and the host system 440 monitors the signal may be considered.

【0048】図10は、不揮発性メモリ400へのデー
タライト時の動作例を示すフローチャートである。
FIG. 10 is a flow chart showing an operation example at the time of writing data to the non-volatile memory 400.

【0049】ホストシステム440がライトコマンドを
不揮発性メモリ400へ発行すると、I/F制御部420
がコマンドを受ける(ステップ1000)。同様にホス
トシステム406がライトアドレスSAを不揮発性メモ
リ400へ発行する(ステップ1001)。続いてホスト
システム440はライトデータを不揮発性メモリ400
へ転送する(ステップ1002)。このデータはI/F制御
部420を介してメモリセル部401へ送信されメモリ
セル部401内のバッファへ保存される(ステップ10
03)。ホストシステム440からのデータ転送が終了
すると、I/F制御部420はライトコマンドとライトア
ドレスSAを管理部410へ発行する(ステップ100
4、ステップ1005)。 ライトコマンドを受け取っ
た管理部410は、ライトアドレスSAからセグメント番
号とオフセット値を計算した後、管理テーブル700か
ら対応するセグメント情報を選択する(ステップ100
6)。この後、セグメント情報と内部アドレスのオフセ
ット値を比較し不良ブロック検索を行う (ステップ10
07)。比較の結果、SAが不良ブロックを示していれ
ば、対応する代替アドレスをSA'にセットする(ステップ
1010)。もし正常ブロックを示していれば、SAをSA'
とする(ステップ1009)。管理部410は、SA'をメ
モリセル部110へ発行する(ステップ1011)。続い
て管理部410は、ライトコマンドをメモリセル部40
1に発行する(ステップ1012)。ライトコマンドを受
け取ったメモリセル部401はSA'をライトアドレスと
して、フラッシュメモリセル401へ、バッファに保持
されているホストシステム440から転送されたライト
データの書き込みを行う(ステップ1013)。もし、
ライトエラーが発生すると、メモリセル部401は管理部
410へエラー報告を行い(ステップ1015)、管理部41
0は、このライトアドレスが示すブロックSA'を不良ブ
ロックとして管理テーブルに登録する(ステップ101
4)。そして、管理テーブルを管理領域に保存し(ステッ
プ1016)、次に書き込むべきアドレスを計算してデ
ータライト処理を再実行する。このとき、通常、書き込
むべき次のアドレスは、ライトエラーが発生したアドレ
スの次を使用するが、何らかの予測手段を用いて算出を
行ってもかまわない。
When the host system 440 issues a write command to the nonvolatile memory 400, the I / F control unit 420
Receives a command (step 1000). Similarly, the host system 406 issues the write address SA to the nonvolatile memory 400 (step 1001). Subsequently, the host system 440 transfers the write data to the nonvolatile memory 400.
(Step 1002). This data is transmitted to the memory cell unit 401 via the I / F control unit 420 and stored in the buffer in the memory cell unit 401 (step 10).
03). When the data transfer from the host system 440 is completed, the I / F control unit 420 issues a write command and a write address SA to the management unit 410 (step 100).
4, step 1005). Upon receiving the write command, the management unit 410 calculates the segment number and offset value from the write address SA, and then selects the corresponding segment information from the management table 700 (step 100).
6). Then, the segment information is compared with the offset value of the internal address to search for a defective block (step 10).
07). If SA indicates a bad block as a result of the comparison, the corresponding alternative address is set to SA '(step 1010). If it shows a normal block, SA to SA '
(Step 1009). The management unit 410 issues SA 'to the memory cell unit 110 (step 1011). Then, the management unit 410 sends the write command to the memory cell unit 40.
1 (step 1012). The memory cell unit 401 having received the write command writes the write data transferred from the host system 440 held in the buffer to the flash memory cell 401, using SA ′ as the write address (step 1013). if,
When a write error occurs, the memory cell unit 401 reports an error to the management unit 410 (step 1015), and the management unit 41
0 registers the block SA ′ indicated by this write address as a defective block in the management table (step 101).
4). Then, the management table is saved in the management area (step 1016), the address to be written next is calculated, and the data write process is re-executed. At this time, normally, the next address to be written is the address next to the address in which the write error has occurred, but the calculation may be performed by using some kind of prediction means.

【0050】メモリセル部401がデータライト実行後
(ステップ1017)。正常終了した場合は、I/F制御部
420を介してホストシステム440へライト完了を通
知する(ステップ1017、ステップ1018)。ホスト
システム440への通知方法としては、例えば、ステー
タスを送信する方法等がある。またライトコマンドを不
揮発性メモリ400へ発行してから、ライト完了の通知
が戻ってくるまでの間のホストシステム440と不揮発
性メモリ400との間での待ち制御方法として、前述同
様、レディビジー信号を不揮発性メモリ400が出力
し、ホストシステム440がその信号をモニタリングす
る方法が考えられる。
After the memory cell section 401 executes data write
(Step 1017). In the case of normal termination, the write completion is notified to the host system 440 via the I / F control unit 420 (step 1017, step 1018). As a method of notifying the host system 440, there is, for example, a method of transmitting a status. Further, as a waiting control method between the host system 440 and the non-volatile memory 400 after the write command is issued to the non-volatile memory 400 until the notification of the write completion is returned, the ready / busy signal is transmitted as described above. A method in which the non-volatile memory 400 outputs the signal and the host system 440 monitors the signal can be considered.

【0051】なお、本発明で示した不揮発性メモリ40
0は一例であり、不良を含む揮発性メモリの代替処理方
式としても本方式を適用することが可能である。この場
合は、管理情報のみ別途外部から起動時に管理部410
へ読み込むか、管理情報用の不揮発性メモリを搭載する
ことで対応することが可能になる。また、不揮発性メモ
リ400として半導体メモリだけでなく、例えば磁気デ
ィスクなどにおいても、本方式を適用することが可能で
ある。また、本発明で示した構成は、揮発性或いは不揮
発性メモリと、それを制御するコントローラを一つのパ
ッケージにした製品にも適用可能である。
The nonvolatile memory 40 shown in the present invention
0 is an example, and this method can be applied as an alternative processing method for a volatile memory including a defect. In this case, only the management information is separately managed by the management unit 410 when it is started from the outside.
It is possible to handle this by reading in or loading a non-volatile memory for management information. The present method can be applied not only to the semiconductor memory as the non-volatile memory 400 but also to, for example, a magnetic disk. Further, the configuration shown in the present invention can be applied to a product in which a volatile or non-volatile memory and a controller for controlling the same are packaged in one package.

【0052】[0052]

【発明の効果】本発明によれば、メモリを複数領域に分
けて領域ごとの特性を管理するため、大容量で不良領域
を含むメモリの不良管理を小容量の管理情報で効率よく
管理することが可能になる。
According to the present invention, since the memory is divided into a plurality of areas and the characteristics of each area are managed, the failure management of a memory having a large capacity and including a defective area can be efficiently managed by a small amount of management information. Will be possible.

【0053】また、アクセス時に行うアクセスアドレス
と、不良アドレスの検索比較処理の時間を、短縮するこ
とが可能になる。
Further, it becomes possible to shorten the time required for the search and comparison processing of the access address and the defective address performed at the time of access.

【0054】また、局所集中的な不良が発生した場合
も、その不良を含む領域以外の領域に対するアクセスを
行う場合、アクセスアドレスの不良、正常判定に必要な
時間を削減できる。さらに、書込み回数をブロックごと
に管理し、局所集中的な消去書き込みを分散させる機能
を少量の管理データで実現することが可能となる。
Further, even when a locally concentrated defect occurs, when an area other than the area including the defect is accessed, it is possible to reduce the time required for determining the defect of the access address and the normality. Further, it becomes possible to realize the function of managing the number of times of writing for each block and distributing locally intensive erase and write with a small amount of management data.

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

【図1】本発明の概念説明図である。FIG. 1 is a conceptual explanatory diagram of the present invention.

【図2】本発明の処理の流れを示すフローチャート図で
ある。
FIG. 2 is a flowchart showing a processing flow of the present invention.

【図3】本発明の概念説明図である。FIG. 3 is a conceptual explanatory diagram of the present invention.

【図4】本発明を適用した不揮発性メモリ構成例を示す
図である。
FIG. 4 is a diagram showing a configuration example of a nonvolatile memory to which the present invention is applied.

【図5】本発明を適用した不揮発性メモリ構成例を示す
図である。
FIG. 5 is a diagram showing a non-volatile memory configuration example to which the present invention is applied.

【図6】本発明を適用した不揮発性メモリのメモリマッ
プの一例を示す図である。
FIG. 6 is a diagram showing an example of a memory map of a nonvolatile memory to which the present invention has been applied.

【図7】本発明を適用した不揮発性メモリの管理テーブ
ルの構成例を示す図である。
FIG. 7 is a diagram showing a configuration example of a management table of a nonvolatile memory to which the present invention has been applied.

【図8】本発明を適用した不揮発性メモリの初期起動時
の動作例を示す図である。
FIG. 8 is a diagram showing an operation example of a nonvolatile memory to which the present invention is applied at initial startup.

【図9】本発明を適用した不揮発性メモリのデータリー
ド時の動作例を示す図である。
FIG. 9 is a diagram showing an operation example during data reading of the nonvolatile memory to which the present invention is applied.

【図10】本発明を適用した不揮発性メモリのデータラ
イト時の動作例を示す図である。
FIG. 10 is a diagram showing an operation example at the time of data writing of the nonvolatile memory to which the present invention is applied.

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

100…フラッシュメモリ、101…オフセット、10
2…メモリ物理アドレス、103…ブロック、104…
ブロックの状態、105…データセグメント、106…
代替セグメント、107…アドレス変換処理、108…
通常領域、109…代替領域、110…良不良フラグ、
111…セグメントN管理情報、112…代替元論理ア
ドレス、113…フラッシュメモリセル、114…不良
管理テーブル、117…登録エントリ、120…ホスト
システム、121…ホスト論理アドレス、122…ブロ
ックの状態、123…ホスト空間、300…フラッシュ
メモリ論理空間、301…書換回数、302…SRウェ
アレベリング管理テーブル、303…オフセット値、3
04…セグメントシフト数、400…不揮発性メモリ、
401…メモリセル部、402…フラッシュメモリセ
ル、403…制御部、404…切替部、405…バッフ
ァ、406…SRAM I/F-3、407…AND I/F、408…S
RAM I/F-2、410…管理部、420…I/F制御部、43
0…I/F制御部、431…AND I/F-1、432…AMD I/F-2、
433…AND I/F-3、434…SRAM I/F、434…I/F切替
信号、440…ホストシステム、441…ホストI/F、
500…プログラマブルシーケンサ、501…シーケン
スROM、502…WorkRAM、503…制御レジ
スタ群、505…I/Fレジスタ、506…ECC、7
00…管理テーブル構成例
100 ... Flash memory, 101 ... Offset, 10
2 ... Memory physical address, 103 ... Block, 104 ...
Block state, 105 ... Data segment, 106 ...
Alternate segment, 107 ... Address conversion process, 108 ...
Normal area, 109 ... Alternative area, 110 ... Good / bad flag,
111 ... Segment N management information, 112 ... Alternate source logical address, 113 ... Flash memory cell, 114 ... Fault management table, 117 ... Registration entry, 120 ... Host system, 121 ... Host logical address, 122 ... Block state, 123 ... Host space, 300 ... Flash memory logical space, 301 ... Rewrite count, 302 ... SR wear leveling management table, 303 ... Offset value, 3
04 ... Segment shift number, 400 ... Non-volatile memory,
401 ... Memory cell section, 402 ... Flash memory cell, 403 ... Control section, 404 ... Switching section, 405 ... Buffer, 406 ... SRAM I / F-3, 407 ... AND I / F, 408 ... S
RAM I / F-2, 410 ... Management unit, 420 ... I / F control unit, 43
0 ... I / F control unit, 431 ... AND I / F-1, 432 ... AMD I / F-2,
433 ... AND I / F-3, 434 ... SRAM I / F, 434 ... I / F switching signal, 440 ... Host system, 441 ... Host I / F,
Reference numeral 500 ... Programmable sequencer, 501 ... Sequence ROM, 502 ... WorkRAM, 503 ... Control register group, 505 ... I / F register, 506 ... ECC, 7
00 ... Management table configuration example

フロントページの続き (72)発明者 中村 剛 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 (72)発明者 小堺 健司 東京都小平市上水本町五丁目20番1号 株 式会社日立製作所半導体グループ内 (72)発明者 角田 元泰 神奈川県川崎市麻生区王禅寺1099番地 株 式会社日立製作所システム開発研究所内 Fターム(参考) 5B018 GA04 GA06 HA01 HA35 KA01 KA14 NA06 QA14 QA15 RA03 5B025 AA01 AD13 AE05 AE08 5L106 AA10 BB12 CC16 CC32 FF04 FF05 GG05 Continued front page    (72) Inventor Tsuyoshi Nakamura             5-20-1 Kamimizuhonmachi, Kodaira-shi, Tokyo Stock             Ceremony Company within Hitachi Semiconductor Group (72) Inventor Kenji Kosakai             5-20-1 Kamimizuhonmachi, Kodaira-shi, Tokyo Stock             Ceremony Company within Hitachi Semiconductor Group (72) Inventor Motoyasu Tsunoda             1099 Ozenji, Aso-ku, Kawasaki City, Kanagawa Prefecture             Ceremony company Hitachi Systems Development Laboratory F-term (reference) 5B018 GA04 GA06 HA01 HA35 KA01                       KA14 NA06 QA14 QA15 RA03                 5B025 AA01 AD13 AE05 AE08                 5L106 AA10 BB12 CC16 CC32 FF04                       FF05 GG05

Claims (15)

【特許請求の範囲】[Claims] 【請求項1】情報を特定の単位でアクセスすることが可
能な、不良領域を含む不揮発性或いは揮発性の記録部
と、前記記録部を制御する記録部制御回路と、前記記録
部と送受信するデータを一時的に記録するバッファメモ
リと、前記記録部内の前記不良領域を管理するための情
報を保存する揮発性メモリと、前記揮発性メモリの情報
を処理する不良管理回路と、ホストシステムからのアク
セスを処理し、前記記録部制御回路と前記不良管理回路
に動作指示を出すインタフェース制御回路を有するメモ
リ装置において、 前記記録部を仮想的に複数の領域に分割して個別に管理
する手段と、 分割単位ごとにその領域内に含まれる不良領域と、今後
発生する可能性のある不良領域を置き換えるための代替
領域を確保し管理する手段と、 不良領域へ前記ホストシステムがアクセスしたときに、
前記代替領域をアクセスさせるためにアクセス先を変換
する手段とを有するメモリ装置。
1. A non-volatile or volatile recording unit including a defective area capable of accessing information in a specific unit, a recording unit control circuit for controlling the recording unit, and transmitting / receiving with the recording unit. A buffer memory for temporarily recording data, a volatile memory for storing information for managing the defective area in the recording unit, a defect management circuit for processing information in the volatile memory, and a host system In a memory device having an interface control circuit that processes an access and issues an operation instruction to the recording unit control circuit and the defect management circuit, means for individually managing the recording unit by virtually dividing it into a plurality of areas, A method for securing and managing a defective area included in the area for each division unit and an alternative area for replacing a defective area that may occur in the future, and to the defective area. When the serial host system has access,
A memory device having means for converting an access destination in order to access the alternative area.
【請求項2】請求項1に記載のメモリ装置において、 複数の領域に分割された各領域の先頭からの位置aが等
しいそれぞれの領域内の個々のデータブロックを、位置
aごとまとめて管理するための管理情報と、個々のデー
タブロックへ消去書込の度に記録される消去書込回数と
を用いて、領域m内の位置aにある特定のデータブロック
の消去書込回数が一定の値に達すると、位置aに対応す
る前期管理情報の値nを変化させ、その管理情報に基づ
き、領域mの位置aのデータブロックへ書込む内容を、領
域n+mの位置aにあるデータブロックへ記録するする手段
を有するメモリ装置。
2. The memory device according to claim 1, wherein each data block in each area having the same position a from the beginning of each area divided into a plurality of areas is
By using the management information for collectively managing each a and the number of erase writes recorded in each data block each time the erase write is performed, the erase write of the specific data block at the position a in the area m is performed. When the number of writes reaches a certain value, the value n of the previous period management information corresponding to the position a is changed, and based on the management information, the contents to be written in the data block at the position a in the region m are stored in the region n + m. A memory device having means for recording to a data block at location a.
【請求項3】請求項2に記載のメモリ装置において、 領域mの位置aのデータブロックの内容の読み出しを行う
際、位置aの管理情報の値nを用いて、領域n+mの位置aの
データブロックの内容を読み出す手段を有するメモリ装
置。
3. The memory device according to claim 2, wherein when the contents of the data block at the position a in the area m are read, the value n of the management information at the position a is used and the position a in the area n + m is read. Memory device having means for reading the contents of a data block of the memory device.
【請求項4】請求項1に記載のメモリ装置において、 前記記録部が複数種類の不良特性を持ち、 それぞれの不良特性に応じた回路で順次代替処理を行う
手段を有するメモリ装置。
4. The memory device according to claim 1, wherein the recording unit has a plurality of types of defect characteristics, and a circuit that performs a substitute process sequentially by a circuit according to each defect characteristic.
【請求項5】請求項1に記載のメモリ装置において、 前記不良管理回路が、プログラマブルシーケンサとシー
ケンスを記録したROMで構成され、 前記ROMを入れ替えることで、シーケンスコードを変更
することが可能であるメモリ装置。
5. The memory device according to claim 1, wherein the defect management circuit includes a programmable sequencer and a ROM in which a sequence is recorded, and the sequence code can be changed by replacing the ROM. Memory device.
【請求項6】請求項1に記載のメモリ装置において、 前記不良管理回路がプログラマブルシーケンサとシーケ
ンスを保持するRAMで構成され、 起動時に前記記録部からシーケンスコーを読出しシーケ
ンスRAMへ保存し、前記シーケンスコードをシーケンサ
が実行する手段を有することで、前記シーケンスコード
を変更することが可能であるメモリ装置。
6. The memory device according to claim 1, wherein the defect management circuit includes a programmable sequencer and a RAM that holds a sequence, and a sequence code is read from the recording unit at the time of start-up and stored in the sequence RAM, and the sequence is stored. A memory device capable of changing the sequence code by having a means for executing a code by a sequencer.
【請求項7】請求項5または請求項6に記載のメモリ装
置において、 前記記録部が複数種類の不良特性を持ち、そのうち特定
種類のみプログラマブルシーケンサで処理を行い、その
他の不良特性を専用回路で処理するメモリ装置。
7. The memory device according to claim 5, wherein the recording section has a plurality of types of defect characteristics, only a specific type among them is processed by a programmable sequencer, and other defect characteristics are processed by a dedicated circuit. Processing memory device.
【請求項8】データを記憶するためのデータ領域と前記
データ領域を代替するための代替領域とを含む不揮発性
又は揮発性のメモリセル部と、前記メモリセル部を管理
するための管理部とを備えたメモリ装置において、 前記代替領域は、前記管理部又は前記データの読み出し
若しくは書き込みを要求するホストシステムのアクセス
単位を複数個まとめたセグメント単位で、前記データ領
域を代替するメモリ装置。
8. A non-volatile or volatile memory cell section including a data area for storing data and an alternative area for substituting the data area, and a management section for managing the memory cell section. In the memory device, the alternative area replaces the data area in a segment unit in which a plurality of access units of the management unit or a host system that requests reading or writing of the data are collected.
【請求項9】前記アクセス単位は、前記データの消去単
位と前記ホストシステムからの読み出し要求単位と前記
ホストシステムからの書き込み要求単位の少なくとも1
つである請求項8に記載のメモリ装置。
9. The access unit is at least one of a data erase unit, a read request unit from the host system, and a write request unit from the host system.
The memory device according to claim 8, wherein the memory device is a memory device.
【請求項10】前記アクセス単位は、複数のセクタを含
むブロックである請求項8に記載のメモリ装置。
10. The memory device according to claim 8, wherein the access unit is a block including a plurality of sectors.
【請求項11】前記メモリセル部は、前記セグメント単
位で前記データ領域と前記代替領域との対応関係を記憶
するための管理情報領域を含む請求項8に記載のメモリ
装置。
11. The memory device according to claim 8, wherein the memory cell unit includes a management information area for storing a correspondence relationship between the data area and the alternative area in the segment unit.
【請求項12】前記管理部は、当該メモリ装置の起動時
に、他の揮発性メモリに、前記セグメント単位で前記デ
ータ領域と前記代替領域との対応関係を含む管理情報を
生成する請求項8に記載のメモリ装置。
12. The management unit, when starting the memory device, generates management information including a correspondence relationship between the data area and the alternative area in the segment unit in another volatile memory. The described memory device.
【請求項13】前記管理部は、前記ホストシステムから
の要求に応じて、前記管理情報を用いて前記データ領域
をアクセスするか又は前記代替領域をアクセスするかを
判断する請求項12に記載のメモリ装置。
13. The management unit according to claim 12, wherein the management unit uses the management information to determine whether to access the data area or the alternative area in response to a request from the host system. Memory device.
【請求項14】前記管理部は、前記管理情報を用いて、
前記ホストシステムからのアクセスアドレスを、前記メ
モリセル部の物理アドレスへ変換する請求項12に記載
のメモリ装置。
14. The management unit, using the management information,
The memory device according to claim 12, wherein an access address from the host system is converted into a physical address of the memory cell unit.
【請求項15】前記管理部は、前記データ領域の前記セ
グメント内の一部又は全部の不良を検出した場合又は前
記データ領域から読み出された前記データの不良を検出
した場合に、前記セグメント単位で前記管理情報を更新
する請求項12に記載のメモリ装置。
15. The management unit determines the segment unit when detecting a defect of a part or all of the segment in the data area or a defect of the data read from the data area. 13. The memory device according to claim 12, wherein the management information is updated by.
JP2002194084A 2002-02-26 2002-07-03 Memory device Expired - Fee Related JP3928500B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002194084A JP3928500B2 (en) 2002-02-26 2002-07-03 Memory device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2002-48943 2002-02-26
JP2002048943 2002-02-26
JP2002194084A JP3928500B2 (en) 2002-02-26 2002-07-03 Memory device

Publications (2)

Publication Number Publication Date
JP2003323352A true JP2003323352A (en) 2003-11-14
JP3928500B2 JP3928500B2 (en) 2007-06-13

Family

ID=29551959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002194084A Expired - Fee Related JP3928500B2 (en) 2002-02-26 2002-07-03 Memory device

Country Status (1)

Country Link
JP (1) JP3928500B2 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005076283A1 (en) * 2004-02-10 2005-08-18 Sharp Kabushiki Kaisha Nonvolatile semiconductor storing device and block redundancy saving method
JP2006031696A (en) * 2004-07-16 2006-02-02 Samsung Electronics Co Ltd Flash memory system including bad block management part
JP2007011619A (en) * 2005-06-29 2007-01-18 Sharp Corp Recording device, program for the same, and recording medium
WO2007013372A1 (en) 2005-07-29 2007-02-01 Matsushita Electric Industrial Co., Ltd. Memory controller, nonvolatile memory, nonvolatile memory system, and nonvolatile memory address management method
JP2008191966A (en) * 2007-02-06 2008-08-21 Hitachi Ltd Storage system and its control method
US7565478B2 (en) 2005-01-20 2009-07-21 Sandisk Corporation Scheduling of housekeeping operations in flash memory systems
WO2009107286A1 (en) * 2008-02-29 2009-09-03 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
JP2010225257A (en) * 2009-03-25 2010-10-07 Fujitsu Semiconductor Ltd Semiconductor memory and system
US7870446B2 (en) 2008-02-29 2011-01-11 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
US9036412B2 (en) 2012-07-24 2015-05-19 Samsung Electronics Co., Ltd. Memory device and method of determining read voltage of memory device
US9582411B2 (en) 2014-03-04 2017-02-28 Sony Corporation Memory controller, storage apparatus, information processing system, and control method therefor

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005076283A1 (en) * 2004-02-10 2005-08-18 Sharp Kabushiki Kaisha Nonvolatile semiconductor storing device and block redundancy saving method
US7460419B2 (en) 2004-02-10 2008-12-02 Sharp Kabushiki Kaisha Nonvolatile semiconductor storing device and block redundancy saving method
JP2006031696A (en) * 2004-07-16 2006-02-02 Samsung Electronics Co Ltd Flash memory system including bad block management part
US7565478B2 (en) 2005-01-20 2009-07-21 Sandisk Corporation Scheduling of housekeeping operations in flash memory systems
US8364883B2 (en) 2005-01-20 2013-01-29 Sandisk Technologies Inc. Scheduling of housekeeping operations in flash memory systems
JP2009282989A (en) * 2005-01-20 2009-12-03 Sandisk Corp Scheduling of housekeeping operation in flash memory system
JP4503500B2 (en) * 2005-06-29 2010-07-14 シャープ株式会社 RECORDING DEVICE, PROGRAM THEREOF, AND RECORDING MEDIUM
JP2007011619A (en) * 2005-06-29 2007-01-18 Sharp Corp Recording device, program for the same, and recording medium
WO2007013372A1 (en) 2005-07-29 2007-02-01 Matsushita Electric Industrial Co., Ltd. Memory controller, nonvolatile memory, nonvolatile memory system, and nonvolatile memory address management method
US8051268B2 (en) 2005-07-29 2011-11-01 Panasonic Corporation Memory controller, nonvolatile storage device, nonvolatile storage system, and nonvolatile memory address management method
JP2008191966A (en) * 2007-02-06 2008-08-21 Hitachi Ltd Storage system and its control method
US8117376B2 (en) 2007-02-06 2012-02-14 Hitachi, Ltd. Storage system and control method thereof
US8930611B2 (en) 2007-02-06 2015-01-06 Hitachi, Ltd. Storage system and control method thereof
US7870446B2 (en) 2008-02-29 2011-01-11 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
JP2010521014A (en) * 2008-02-29 2010-06-17 株式会社東芝 Information processing apparatus and nonvolatile semiconductor memory drive
WO2009107286A1 (en) * 2008-02-29 2009-09-03 Kabushiki Kaisha Toshiba Information processing apparatus and nonvolatile semiconductor memory drive
JP2010225257A (en) * 2009-03-25 2010-10-07 Fujitsu Semiconductor Ltd Semiconductor memory and system
US9036412B2 (en) 2012-07-24 2015-05-19 Samsung Electronics Co., Ltd. Memory device and method of determining read voltage of memory device
US9582411B2 (en) 2014-03-04 2017-02-28 Sony Corporation Memory controller, storage apparatus, information processing system, and control method therefor

Also Published As

Publication number Publication date
JP3928500B2 (en) 2007-06-13

Similar Documents

Publication Publication Date Title
US7237057B2 (en) Window-based flash memory storage system and management and access methods thereof
US9785564B2 (en) Hybrid memory with associative cache
US8015371B2 (en) Storage apparatus and method of managing data storage area
US5983312A (en) Simultaneously writing to and erasing two commonly numbered sectors
US8051270B2 (en) Memory controller, nonvolatile storage device, nonvolatile storage system, and memory control method
US5953737A (en) Method and apparatus for performing erase operations transparent to a solid state storage system
JP4132086B2 (en) Moving sectors in blocks in flash memory
US9507719B2 (en) Garbage collection in hybrid memory system
US9367247B2 (en) Memory access requests in hybrid memory system
JP2005301591A (en) Device with nonvolatile memory, and memory controller
JPH10255403A (en) Disk driving device, and its error recovering processing method
KR20060012696A (en) Flash memory for performing bad block management and method for performing bad block management of flash memory
TW200903487A (en) Methods, circuits, and systems to select memory regions
JP2008009874A (en) Memory controller, flash memory system equipped with memory controller, and method for controlling flash memory
JP2007199905A (en) Method for controlling semiconductor storage device
JP2009070098A (en) Memory device, memory control method, and program
JP2005293205A (en) Storage control device, control method, and control program
JP2010267290A (en) Method and apparatus for resolving physical block associated with common logical block
JP2000020252A (en) Storage device using nonvolatile semiconductor memory
JP2003323352A (en) Memory device
JP3589033B2 (en) Flash memory system
JP2023010765A (en) memory system
JP2009116465A (en) Storage device and memory control method
KR20110001914A (en) Method and apparatus for dealing with write errors when writing information data into flash memory devices
JP2023002294A (en) Memory system and refresh control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040629

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20060419

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20061115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061121

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070117

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070226

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120316

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130316

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130316

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140316

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees