JP5180957B2 - メモリコントローラ、半導体記録装置及び書き換え回数通知方法 - Google Patents
メモリコントローラ、半導体記録装置及び書き換え回数通知方法 Download PDFInfo
- Publication number
- JP5180957B2 JP5180957B2 JP2009513989A JP2009513989A JP5180957B2 JP 5180957 B2 JP5180957 B2 JP 5180957B2 JP 2009513989 A JP2009513989 A JP 2009513989A JP 2009513989 A JP2009513989 A JP 2009513989A JP 5180957 B2 JP5180957 B2 JP 5180957B2
- Authority
- JP
- Japan
- Prior art keywords
- information table
- area
- physical block
- physical
- block
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Description
(1)その物理ブロックの全ページのデータを読み出し揮発性メモリに格納する。
(2)揮発性メモリ上でページ0のみを更新する。
(3)当該物理ブロックを消去する。
(4)当該物理ブロックの全ページに揮発性メモリのデータを書き込む。
物理ブロックが不良になった場合には、不良物理ブロックには書き込めないので、論理ブロック番号と物理ブロック番号の変換テーブルを実装し、不良となった場合には別の物理ブロック番号が付された物理ブロックに書き込む。このため、不良ブロックの発生予測数分だけ、余分に物理ブロックを予め確保しておき、書き込みエラーが発生した場合は書き込みエラーが発生したブロックをエラーブロックとして登録し、エラーブロック以外の物理ブロックに書き込むという手法が用いられる。
しかしながら、以下の2個の課題について対策が不十分である。
(課題1)書き換え回数の増大に伴う書き換え回数を登録したブロックのデータ保持特性の劣化。
(課題2)メモリカード等の電断に伴う書き換え回数誤差の蓄積。
以下、上記課題について説明する。
12 ホスト機器
20 フラッシュメモリ
30 メモリコントローラ
31 外部インターフェイス
32 コマンド解析部
33 第1の管理部
34 空きブロック管理テーブル
35 第1の情報テーブル
36 第1の情報テーブル更新部
37 第2の管理部
38 第2の情報テーブル
39 第2の情報テーブル更新部
40 フラッシュ制御部
41 書き換え回数変換部
(A)第1の情報テーブルが記録されている物理ブロック番号
(B)製造時からの第1の情報テーブルが格納された物理ブロックが更新された回数
このテーブルはメモリコントローラ30の揮発性メモリに記録され、同時にフラッシュメモリ20のいずれかの物理ブロックの1ページに記録される。又第2の情報テーブル更新部39は、第1の情報テーブルが記録されている物理ブロック位置が更新された場合に、第2の情報テーブルを更新し、フラッシュメモリ20内の第2の情報テーブルの記録も更新するものである。
(タイプ0): 論理ブロックに対応したユーザデータ記録用の物理ブロック
(タイプ1): 第1の情報テーブル記録用の物理ブロック
(タイプ2): 後発不良ブロックが生じたときのための予備の物理ブロック
の3タイプに分類される。
(1)電源が供給されると、全ブロックを空き状態に初期化する。
(2)不良ブロックを使用済みに更新する。(不良ブロックの管理は発明の本質から外れるので詳細な説明はしないが、フラッシュメモリの固定位置に不良ブロックの番号を記録しておく。)
(3)第1の情報テーブル35を読み出し、使用されている物理ブロックを空きブロック管理テーブル34で使用済みに更新する。
(4)第1の情報テーブル35が更新されたときにその更新をテーブル34に反映する。
第1の情報テーブル35は論理ブロックと物理ブロックの変換テーブルであり、1ブロックが変換される毎に第1の情報テーブルを更新していけば、次式(1)が成り立つ。
第1の情報テーブルの更新回数
=第1領域の物理ブロックの総書き換え回数 ・・・(1)
さらに、第1の情報テーブルはページ単位で更新されるため、製造時からのタイプ1の物理ブロックの更新回数をUPDATE#BLK#NUM、物理ブロックを構成するページ数をN、現在の第1の情報テーブルが存在する物理ブロックのページ番号をXとすると、製造時からの第1の情報テーブルの書き換え回数は次式(2)で示される。
製造時からの第1の情報テーブルの書き換え回数
=(UPDATE #BLK#NUM)*N+X ・・・(2)
また、第1の情報テーブルの物理ブロックの書き換え回数は次式(3)で示される。
第1の情報テーブルの物理ブロックの書き換え回数
=UPDATE#BLK#NUM ・・・(3)
従って第1領域の物理ブロックの総書き換え回数は、式(1),式(2),式(3)より、次式(4)によって求められる。
第1領域の物理ブロックの総書き換え回数
=(UPDATE#BLK#NUM)*(N+1)+X ・・・(4)
第1領域の書き換え回数
=(第1の領域の物理ブロックの総書き換え回数)/(第1領域の物理ブロック数)
=((UPDATE#BLK#NUM)*(N+1)+X)/B ・・・(5)
ホスト機器よりフラッシュメモリの書き換え回数リードコマンドが発行されたときに、コマンド解析部32によってこのコマンドが書き換え回数変換部41に与えられる。書き換え回数変換部41はフラッシュメモリの書き換え回数を式(5)により導出し、外部インターフェイス31を介してホスト機器11に転送する。こうすれば容易に書き換え回数を検出できる信頼性の高いシステムを構築することができる。
第2領域の物理ブロックの総書き換え回数=
Int[第1の情報テーブルの物理ブロックの書き換え回数/N]+1 ・・・(6)
従って式(3)より、メモリの第2領域の物理ブロックの総書き換え回数は次式(7)で示される。
メモリの第2領域の物理ブロックの総書き換え回数=
Int[UPDATE#BLK#NUM)/N]+1 ・・・(7)
また、メモリの第2の領域の物理ブロック数は(A−B)個であることより、メモリの第2領域全体の書き換え回数は、次式(8)で示される。
第2領域の書き換え回数
=(Int[UPDATE#BLK#NUM/N]+1)/(A−B) ・・・(8)
メモリの第1領域の書き換え回数=10000、B=10000、N=100、X=0を式(5)に代入し、UPDATE#BLK#NUMを求めると
UPDATE#BLK#NUM=1.0×106 程度になる。
第2領域に10個の物理ブロックを割り当てた場合のフラッシュメモリの第2領域の書き換え回数は式(8)より1.0×103程度になる。即ち、第2領域の書き換え回数は、メモリの第1領域の書き換え回数と比較して圧倒的に小さくなる。上記の例では、メモリの第2領域の書き換え回数はメモリの第1の領域の書き換え回数の1/10となり、大幅に抑制することが可能である。よって、第1の領域の物理ブロックと第2のメモリ領域の物理ブロックを独立に循環させて記録することにより、フラッシュメモリの第2領域の書き換え回数を抑制することができ、第2領域に記録された製造時からの前記第1の情報テーブルの更新回数の信頼性を向上することができる。これにより第1の課題である書き換え回数の増大に伴う書き換え回数登録ブロックの保持特性の劣化を抑制することができる。
(1)第1の情報テーブルを書き込む直前の電断
この場合の誤差は1回になる。
(2)第1の情報テーブルの書き込み中の電断
この場合も、更新する情報テーブルにかかる更新箇所の物理ブロックが登録されないため、誤差は1回になる。
一方、第2の情報テーブルを書き込む直前の電断又は書き込み中の電断については、第2の領域にかかる書き換え回数のため、誤差に影響はない。ゆえに、本実施の形態によれば、電断による書き換え回数誤差の蓄積も極小にすることができる。
Claims (7)
- 複数の物理ブロックによって構成される少なくとも1つの不揮発性メモリと、
前記不揮発性メモリにデータを書き込み、前記不揮発性メモリからデータを読み出す媒体制御部と、
前記媒体制御部を介して、前記物理アドレスと論理アドレスとをブロック単位で対応付ける第1の情報テーブル、及びユーザデータを、少なくとも一つの物理ブロックからなる第1の領域に、各物理ブロックに平均化して記録するとともに、前記第1の情報テーブルが記録されている物理ブロックの更新回数を含む第2の情報テーブルを、前記第1の領域とは異なる物理ブロックからなる第2の領域に、各物理ブロックに平均化して記録するよう制御する記録制御部と、
を備える半導体記録装置。 - 前記第2の情報テーブル中の前記更新回数を基に、前記第1領域または前記第2領域の物理ブロックの書き換え回数を算出する書き換え回数変換部と、
前記書き換え回数を、外部機器に通知する外部インタフェースと、
を備える請求項1に記載の半導体記録装置。 - 前記記録制御部は、
前記第2の領域の物理ブロック数を、前記不揮発性メモリの書き換え回数の信頼性に対応させて決定する
請求項1または2に記載の半導体記録装置。 - 複数の物理ブロックによって構成される少なくとも1つの不揮発性メモリにデータを書き込み、前記不揮発性メモリからデータを読み出す媒体制御部と、
前記媒体制御部を介して、前記物理アドレスと論理アドレスとをブロック単位で対応付ける第1の情報テーブル、及びユーザデータを、少なくとも一つの物理ブロックからなる第1の領域に、各物理ブロックに平均化して記録するとともに、前記第1の情報テーブルが記録されている物理ブロックの更新回数を含む第2の情報テーブルを、前記第1の領域とは異なる物理ブロックからなる第2の領域に、各物理ブロックに平均化して記録するよう制御する記録制御部と、
を備えるメモリコントローラ。 - 前記第2の情報テーブル中の前記更新回数を基に、前記第1領域または前記第2領域の物理ブロックの書き換え回数を算出する書き換え回数変換部と、
前記書き換え回数を、外部機器に通知する外部インタフェースと、
を備える請求項4に記載のメモリコントローラ。 - 前記記録制御部は、
前記第2の領域の物理ブロック数を、前記不揮発性メモリの書き換え回数の信頼性に対応させて決定する
請求項4または5に記載のメモリコントローラ。 - 複数の物理ブロックによって構成される少なくとも1つの不揮発性メモリにおける、前記物理アドレスと論理アドレスとをブロック単位で対応付ける第1の情報テーブル、及びユーザデータを、少なくとも一つの物理ブロックからなる第1の領域に、各物理ブロックに平均化して記録するステップと、
前記第1の情報テーブルが記録されている物理ブロックの更新回数を含む第2の情報テーブルを、前記第1の領域とは異なる物理ブロックからなる第2の領域に、各物理ブロックに平均化して記録するステップと、
前記第2の情報テーブル中の前記更新回数を基に、前記第1領域または前記第2領域の物理ブロックの書き換え回数を算出するステップと、
前記書き換え回数を、外部機器に通知するステップと、
を含む書き換え回数通知方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009513989A JP5180957B2 (ja) | 2007-05-10 | 2008-04-18 | メモリコントローラ、半導体記録装置及び書き換え回数通知方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007125921 | 2007-05-10 | ||
JP2007125921 | 2007-05-10 | ||
PCT/JP2008/001025 WO2008139689A1 (ja) | 2007-05-10 | 2008-04-18 | メモリコントローラ、半導体記録装置及び書き換え回数通知方法 |
JP2009513989A JP5180957B2 (ja) | 2007-05-10 | 2008-04-18 | メモリコントローラ、半導体記録装置及び書き換え回数通知方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2008139689A1 JPWO2008139689A1 (ja) | 2010-07-29 |
JP5180957B2 true JP5180957B2 (ja) | 2013-04-10 |
Family
ID=40001915
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009513989A Active JP5180957B2 (ja) | 2007-05-10 | 2008-04-18 | メモリコントローラ、半導体記録装置及び書き換え回数通知方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8397015B2 (ja) |
JP (1) | JP5180957B2 (ja) |
WO (1) | WO2008139689A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5264459B2 (ja) * | 2008-12-17 | 2013-08-14 | パナソニック株式会社 | 半導体記憶装置 |
KR101786027B1 (ko) * | 2009-04-07 | 2017-10-18 | 콘티넨탈 오토모티브 시스템 주식회사 | 자동차의 데이터 저장 방법 |
JP6118045B2 (ja) * | 2012-07-31 | 2017-04-19 | 株式会社メガチップス | 半導体記憶装置 |
JP6152999B2 (ja) * | 2012-08-10 | 2017-06-28 | 株式会社メガチップス | 半導体記憶装置 |
JP5683558B2 (ja) * | 2012-11-01 | 2015-03-11 | 東芝情報システム株式会社 | フラッシュメモリ制御装置、フラッシュメモリ制御方法及びフラッシュメモリ制御用プログラム |
JP6890238B2 (ja) * | 2017-04-07 | 2021-06-18 | パナソニックIpマネジメント株式会社 | 使用回数を増大させた不揮発性メモリ |
US11218360B2 (en) | 2019-12-09 | 2022-01-04 | Quest Automated Services, LLC | Automation system with edge computing |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06302194A (ja) * | 1993-01-20 | 1994-10-28 | Canon Inc | 情報処理装置 |
JP2003022682A (ja) * | 2001-07-09 | 2003-01-24 | Mitsubishi Electric Corp | 半導体装置 |
JP2005284659A (ja) * | 2004-03-29 | 2005-10-13 | Matsushita Electric Ind Co Ltd | メモリカード及びメモリカードドライブ |
JP2006323751A (ja) * | 2005-05-20 | 2006-11-30 | Nec Infrontia Corp | 情報処理装置、寿命監視方法およびプログラム |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841669A (en) * | 1996-01-26 | 1998-11-24 | Howmet Research Corporation | Solidification control including pattern recognition |
US5740936A (en) * | 1996-11-20 | 1998-04-21 | Nash; William L. | Electric outlet box assembly |
JP4031190B2 (ja) * | 2000-09-29 | 2008-01-09 | 株式会社東芝 | メモリカード、不揮発性メモリ、不揮発性メモリのデータ書き込み方法及びデータ書き込み装置 |
JP2004310650A (ja) * | 2003-04-10 | 2004-11-04 | Renesas Technology Corp | メモリ装置 |
TW200705180A (en) * | 2005-07-29 | 2007-02-01 | Genesys Logic Inc | Adjustable flash memory management system and method |
-
2008
- 2008-04-18 JP JP2009513989A patent/JP5180957B2/ja active Active
- 2008-04-18 WO PCT/JP2008/001025 patent/WO2008139689A1/ja active Application Filing
- 2008-04-18 US US12/598,957 patent/US8397015B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06302194A (ja) * | 1993-01-20 | 1994-10-28 | Canon Inc | 情報処理装置 |
JP2003022682A (ja) * | 2001-07-09 | 2003-01-24 | Mitsubishi Electric Corp | 半導体装置 |
JP2005284659A (ja) * | 2004-03-29 | 2005-10-13 | Matsushita Electric Ind Co Ltd | メモリカード及びメモリカードドライブ |
JP2006323751A (ja) * | 2005-05-20 | 2006-11-30 | Nec Infrontia Corp | 情報処理装置、寿命監視方法およびプログラム |
Also Published As
Publication number | Publication date |
---|---|
WO2008139689A1 (ja) | 2008-11-20 |
US8397015B2 (en) | 2013-03-12 |
JPWO2008139689A1 (ja) | 2010-07-29 |
US20100138593A1 (en) | 2010-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4688584B2 (ja) | ストレージ装置 | |
KR100644602B1 (ko) | 플래시메모리를 위한 재사상 제어방법 및 그에 따른플래시 메모리의 구조 | |
KR100910680B1 (ko) | 소거 카운트 블록을 유지하는 방법 및 장치 | |
US6405323B1 (en) | Defect management for interface to electrically-erasable programmable read-only memory | |
US6427186B1 (en) | Memory, interface system and method for mapping logical block numbers to physical sector numbers in a flash memory, using a master index table and a table of physical sector numbers | |
US8037232B2 (en) | Data protection method for power failure and controller using the same | |
KR100914089B1 (ko) | 비휘발성 저장 시스템의 소거 카운트 유지 방법 및 장치 | |
US7526599B2 (en) | Method and apparatus for effectively enabling an out of sequence write process within a non-volatile memory system | |
JP5612514B2 (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
US9213629B2 (en) | Block management method, memory controller and memory stoarge apparatus | |
JP5180957B2 (ja) | メモリコントローラ、半導体記録装置及び書き換え回数通知方法 | |
US8332696B2 (en) | Defect management method for storage medium and system thereof | |
US20090327804A1 (en) | Wear leveling in flash storage devices | |
US7649794B2 (en) | Wear leveling method and controller using the same | |
US8296503B2 (en) | Data updating and recovering methods for a non-volatile memory array | |
KR20050067203A (ko) | 비휘발성 저장 시스템의 평균 소거 카운트 유지 방법 및장치 | |
US9268688B2 (en) | Data management method, memory controller and memory storage apparatus | |
WO2009096180A1 (ja) | メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム | |
US8762810B2 (en) | Semiconductor recording device, control method of semiconductor recording device, and semiconductor recording system | |
JP2007193865A (ja) | 情報記録装置及びその制御方法 | |
US20100180072A1 (en) | Memory controller, nonvolatile memory device, file system, nonvolatile memory system, data writing method and data writing program | |
JP5494086B2 (ja) | 不揮発性記憶装置および不揮発性メモリコントローラ | |
JP2012058770A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2008097132A (ja) | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム | |
JP2012068765A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110126 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110126 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20120207 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20120210 |
|
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: 20121218 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130111 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5180957 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |