JP5535113B2 - メモリシステム - Google Patents
メモリシステム Download PDFInfo
- Publication number
- JP5535113B2 JP5535113B2 JP2011067510A JP2011067510A JP5535113B2 JP 5535113 B2 JP5535113 B2 JP 5535113B2 JP 2011067510 A JP2011067510 A JP 2011067510A JP 2011067510 A JP2011067510 A JP 2011067510A JP 5535113 B2 JP5535113 B2 JP 5535113B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- error
- read
- inspection
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Description
図1は、本実施の形態に係る情報処理システム100の機能ブロック図である。情報処理システム100は、ホストシステム1と、メモリシステム2とを備える。メモリシステム2は、メモリコントローラ3,5と、メモリ4,6と、ECC(Error Checking and Correction)回路31,51とを備える。
図2は、メインメモリ4及びサブメモリ6の構成を示す図である。具体的には、メインメモリ4及びサブメモリ6は、同一の構成を有し、それぞれ1枚のダイで構成される。ダイは、複数のバンクを含む。図2に示す例では、ダイは、J個のバンクを含む。バンクは、複数のブロックを含む。図2に示す例では、バンクは、M個のブロックを含む。ブロックは、複数のページを含む。図2に示す例では、ブロックは、Z個のページを含む。
以下、図3を用いて、メモリシステム2の動作の概略を説明する。図3は、メモリシステム2の動作の概略を示す図である。図3において、ホストシステム1、メモリコントローラ3,5、メインメモリ4及びサブメモリ6以外の構成の表示を省略している。
ホストシステム1が、データの書き込み要求をメモリシステム2へ出力する(ステップS1)。メモリコントローラ3が、書き込み要求に基づいて、データを書き込む対象となるページ(書き込みページ)を決定する。メモリコントローラ3は、メインメモリ4の書き込みページにデータを書き込む(ステップS2)。また、メモリコントローラ3は、書き込み指示として、データと、書き込みページの論理アドレスとをメモリコントローラ5に通知する(ステップS3)。メモリコントローラ5は、書き込み指示に基づいて、サブメモリ6の書き込みページにデータを書き込む(ステップS4)。これにより、メインメモリ4及びサブメモリ6の同一アドレスには、同一のデータが書き込まれる。
ホストシステム1が、データの読み出し要求をメモリシステム2へ出力する(ステップS5)。メモリコントローラ3は、読み出し要求に基づいて、メインメモリ4からデータ45Mを読み出し、データ45Mをホストシステム1へ出力する(ステップS6)。ECC回路31は、メインメモリ4から読み出されたデータ45Mに対してエラー検出処理を行う。エラーが検出された場合、エラー訂正されたデータ45Mが、ホストシステム1に出力される。
メモリコントローラ5は、サブメモリ6に格納されたデータの信頼性を向上させるために、サブメモリ6に格納されたデータを検査する。サブメモリ6の検査は、メインメモリ4が読み出し用のメモリとして用いられている間に実行される。
メモリコントローラ3は、切り替え条件が満たされた場合、アクセス対象のメモリを切り替える(ステップS8)。切り替え条件は、サブメモリ6の全てのブロックの検査が終了し、かつ、ホストシステム1の読み出し要求に基づいて、メインメモリ4から読み出されたデータ45Mのエラービット数が所定のしきい値を超えた場合である。以後、メモリコントローラ3は、ホストシステム1から読み出し要求を受け付けた場合、メモリ6からデータを読み出す。メモリコントローラ5は、メモリ4の各ページの検査を開始する。
以下、メモリコントローラ3の動作について、図1及び図4を参照しながら説明する。
図4は、読み出し要求(ステップS5、図3参照)を受け付けたときのメモリコントローラ3の動作を示すフローチャートである。メモリコントローラ3は、ホストシステム1の読み出し要求に応じてメインメモリ4からデータ45Mを読み出す。データ45Mのエラーを訂正できない場合、メモリコントローラ3は、データ45Mに代えて、サブメモリ6から読み出されたデータ45Sをホストシステム1へ出力する。
図6は、代替データ取得処理(ステップS411、図4参照)の流れを示すフローチャートである。上述したように、メモリコントローラ3は、メインメモリ4から読み出したデータ45Mのエラーを訂正できない場合(ステップS403においてNo)、サブメモリ6からデータ45Sを取得する。データ45M,45Sは、メインメモリ4、サブメモリ6において、同一の論理アドレスを有するページに格納されたデータである。
以下、サブメモリ6を検査するときのメモリコントローラ5の動作について説明する。メモリコントローラ5は、メモリコントローラ3がホストシステム1からの読み出し要求に応答するのと並行して、サブメモリ6の各ブロックを検査する。これにより、バックアップ用のサブメモリ6に格納されたデータの信頼性を向上させる。
図10は、データ復旧処理(ステップS513、図9参照)の流れを示すフローチャートである。上述したように、メモリコントローラ5は、検査対象のブロックから読み出したデータ45Cのエラーを訂正できない場合、メインメモリ4から書き戻し用のデータを取得する。
以下、メモリコントローラ3が、アクセス対象をメモリ4からメモリ6へ切り替える処理(ステップS410、図4参照)について説明する。メモリコントローラ3は、読み出したデータ45Mのエラービット数が切替基準値よりも大きく(ステップS408においてYes)、かつ、サブメモリ6の検査が終了した場合(ステップS409においてYes)、アクセス対象のメモリを切り替える(ステップS410)。
上記実施の形態において、メモリコントローラ3は、アクセス対象のメモリの切り替え条件の一つとして、読み出したデータ45Mのエラービット数が切替基準値よりも大きいか否かを判定した(ステップS408)。しかし、メモリの切り替え条件は、これに限られない。
2 メモリシステム
3,5 メモリコントローラ
4 メモリ(メインメモリ)
6 メモリ(サブメモリ)
31,51 ECC回路
32,52 アクセス制御部
33 エラー記録データ
34 動作指示部
35 リードカウンタ
53 検査領域決定部
54 検査管理テーブル
Claims (12)
- 再書き込み可能な不揮発性メモリであり、ホストから読み出し要求を受け付けた場合の読み出し対象として設定された第1メモリと、
再書き込み可能な不揮発性メモリであり、前記第1メモリのバックアップ用のメモリとして設定された第2メモリと、
前記第1メモリと前記第2メモリとにアクセスするメモリコントローラと、
を備え、
前記メモリコントローラは、
前記ホストから書き込み要求を受け付けた場合、前記第1メモリ及び前記第2メモリに対して同一のデータを書き込み、前記ホストから読み出し要求を受け付けた場合、前記第1メモリからデータを読み出すアクセス制御部と、
前記第1メモリが読み出し対象に設定されている状態で前記アクセス制御部が動作しているときに、前記読み出し要求で指定されたアドレスに依存しない予め定められた順序に基づいて、前記第2メモリが有するデータ領域のうちいずれかの領域を検査領域として決定する検査領域決定部と、
前記検査領域から読み出された検査対象データに対してエラー検出を行い、前記検査対象データからエラーが検出された場合、前記検査対象データのエラーを訂正するエラー訂正部と、
を備え、
前記アクセス制御部は、訂正された検査対象データを前記検査領域に再書き込みするメモリシステム。 - 請求項1に記載のメモリシステムであって、
前記検査領域決定部は、前記第1メモリに含まれる第1領域が優先検査条件を満たした場合、前記第2メモリに含まれ、かつ、前記第1領域に格納されたデータと同一のデータを格納する第2領域を、優先的に前記検査領域として決定するメモリシステム。 - 請求項2に記載のメモリシステムであって、
前記エラー訂正部は、前記検査対象データからエラーを検出した場合、前記検査対象データのエラーを訂正するか否かを判定し、
前記アクセス制御部は、エラーを訂正すると判定された場合、前記訂正された検査対象データを前記検査領域に再書き込みするメモリシステム。 - 請求項2または請求項3に記載のメモリシステムであって、
前記メモリコントローラは、さらに、
前記第1メモリから読み出されたデータのエラーを検出するエラー検出部、
を備え、
前記優先検査条件は、前記第1メモリから読み出されたデータのエラービット数が予め設定された第1優先検査基準値を超えることであるメモリシステム。 - 請求項2または請求項3に記載のメモリシステムであって、
前記メモリコントローラは、
前記第1メモリが有するデータ領域ごとに、データが読み出される回数をカウントするカウンタ、
を備え、
前記優先検査条件は、前記読み出し回数が予め設定された第2優先検査基準値を超えることであるメモリシステム。 - 請求項2ないし請求項5のいずれかに記載のメモリシステムであって、
前記検査領域決定部は、前記第1領域が前記優先検査条件を満たし、かつ、前記第2領域が検査されていない場合、前記第2領域を優先的に前記検査領域として決定するメモリシステム。 - 請求項1ないし請求項6のいずれかに記載のメモリシステムであって、
前記アクセス制御部は、前記エラー訂正部が前記検査対象データのエラーを訂正できない場合、前記第1メモリに含まれ、かつ、前記検査領域に格納されたデータと同一のデータを格納するデータ領域から復旧データを読み出し、前記復旧データを前記検査領域に再書き込みするメモリシステム。 - 請求項1または請求項2に記載のメモリシステムであって、
前記アクセス制御部は、所定の切り替え条件が満たされた場合、前記読み出し要求を受け付けたときにデータを読み出すメモリを、前記第1メモリから前記第2メモリに切り替えるとともに、前記第2メモリのバックアップ用のメモリとして前記第1メモリを設定するメモリシステム。 - 請求項8に記載のメモリシステムであって、
前記切り替え条件は、前記第2メモリの全データ領域に対するエラー検出処理を終了し、かつ、前記読み出し要求に応じて前記第1メモリから読み出されたデータのエラービット数が予め設定された第1切替基準値を超えることであるメモリシステム。 - 請求項8に記載のメモリシステムであって、
前記メモリコントローラは、さらに、
前記第1メモリからのデータの読み出し回数をカウントするカウンタ、
を備え、
前記切り替え条件は、前記第2メモリの全データ領域に対するエラー検出処理を終了し、かつ、前記第1メモリからのデータの読み出し回数が予め設定された第2切替基準値を超えることであるメモリシステム。 - 請求項8ないし請求項10のいずれかに記載のメモリシステムであって、
前記メモリコントローラは、さらに、
前記第1メモリから読み出されたデータのエラーを検出するエラー検出部、
を備え、
前記切り替え条件は、前記第1メモリから読み出されたデータのエラーを訂正できないことであるメモリシステム。 - 請求項1ないし請求項11のいずれかに記載のメモリシステムであって、
前記メモリコントローラは、さらに、
前記第1メモリ及び前記第2メモリのうち、前記読み出し要求に基づいてデータが読み出されるメモリに対するアクセスを制御する第1メモリコントローラと、
前記第1メモリ及び前記第2メモリのうち、バックアップ用のメモリに対するアクセスを制御する第2メモリコントローラと、
を備えるメモリシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011067510A JP5535113B2 (ja) | 2011-03-25 | 2011-03-25 | メモリシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011067510A JP5535113B2 (ja) | 2011-03-25 | 2011-03-25 | メモリシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012203642A JP2012203642A (ja) | 2012-10-22 |
JP5535113B2 true JP5535113B2 (ja) | 2014-07-02 |
Family
ID=47184591
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011067510A Expired - Fee Related JP5535113B2 (ja) | 2011-03-25 | 2011-03-25 | メモリシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5535113B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6206161B2 (ja) | 2013-12-18 | 2017-10-04 | 富士通株式会社 | ストレージ制御装置、制御方法、および制御プログラム |
US9558065B2 (en) * | 2015-02-02 | 2017-01-31 | Kabushiki Kaisha Toshiba | Memory system including cache |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0179145U (ja) * | 1987-11-13 | 1989-05-26 | ||
JP3018249B1 (ja) * | 1999-02-17 | 2000-03-13 | 阪神エレクトリック株式会社 | デ―タ保全装置およびデ―タ保全方法 |
JP5283845B2 (ja) * | 2007-02-07 | 2013-09-04 | 株式会社メガチップス | ビットエラーの予防方法、情報処理装置 |
JP2010079856A (ja) * | 2008-09-29 | 2010-04-08 | Hitachi Ltd | 記憶装置およびメモリ制御方法 |
JP2010102640A (ja) * | 2008-10-27 | 2010-05-06 | Nec Computertechno Ltd | メモリコントローラ、コンピュータ、およびメモリミラーリング方法 |
JP2010256944A (ja) * | 2009-04-21 | 2010-11-11 | Mitsubishi Electric Corp | Nand型フラッシュメモリ保守装置及びnand型フラッシュメモリ保守プログラム及びnand型フラッシュメモリ保守方法 |
-
2011
- 2011-03-25 JP JP2011067510A patent/JP5535113B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012203642A (ja) | 2012-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI493553B (zh) | 根據環境溫度資訊來執行平均抹寫程序之方法及其快閃記憶體裝置 | |
JP5283845B2 (ja) | ビットエラーの予防方法、情報処理装置 | |
TWI655574B (zh) | Memory system and processor system | |
JP4901987B1 (ja) | 記憶装置、電子機器及び誤りデータの訂正方法 | |
JP5990430B2 (ja) | Ssd(ソリッドステートドライブ)装置 | |
JP5490062B2 (ja) | 不揮発性半導体記憶装置 | |
JP5202130B2 (ja) | キャッシュメモリ、コンピュータシステム、及びメモリアクセス方法 | |
US20090327804A1 (en) | Wear leveling in flash storage devices | |
KR101687502B1 (ko) | 메모리 제어기, 데이터 기억 장치 및 메모리 제어 방법 | |
US20110047421A1 (en) | Nand flash-based storage device with built-in test-ahead for failure anticipation | |
JP5815388B2 (ja) | メモリアクセス制御装置および方法 | |
KR20120086239A (ko) | 메모리 시스템 및 그 동작 방법 | |
JP2013222435A (ja) | 半導体記憶装置及びその制御方法 | |
JP2013222236A (ja) | メモリの管理方法、記憶装置およびそれを搭載した計算機 | |
KR20130069364A (ko) | 비휘발성 반도체 기억 장치 및 그 관리 방법 | |
JP2009282923A (ja) | 半導体記憶装置及び不揮発性メモリ | |
US20120042118A1 (en) | Method for Flash Memory and Associated Controller | |
JP2010086009A (ja) | 記憶装置およびメモリ制御方法 | |
JP5535113B2 (ja) | メモリシステム | |
JP2020119007A (ja) | 情報処理装置、記憶制御装置および記憶制御プログラム | |
JP2020042890A (ja) | メモリシステムおよびメモリシステムの制御方法 | |
JP4661369B2 (ja) | メモリコントローラ | |
US10734079B1 (en) | Sub block mode read scrub design for non-volatile memory | |
JP6306548B2 (ja) | メモリー管理回路、記憶装置、メモリー管理方法、及びメモリー管理プログラム | |
KR20130136341A (ko) | 반도체 장치 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130301 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140107 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140307 |
|
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: 20140401 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140422 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5535113 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |